1.ls命令
ls命令是一个非常有用的查看文件与目录的命令(List Directory Contents)
参数:
- -l :列出长数据串,包含文件的属性与权限数据等
- -a :列出全部的文件,连同隐藏文件(开头为.的文件)一起列出来(常用)
- -d :仅列出目录本身,而不是列出目录的文件数据
- -h :将文件容量以较易读的方式(GB,kB等)列出来
- -R :连同子目录的内容一起列出(递归列出),等于该目录下的所有文件都会显示出来
2.修改文件权限
2.1初识权限
首先执行以下命令,查看目录内的情况 [root@localhost ~]# ls -l
第一个字符, -代表文件 d代表文件夹 l 代表:软连接文件(类似于windows下的快捷方式)
三个rwx分别代表三个组别的权限,解析如下: 第一个rwx:文件所有者(user)有读写运行权限; 第二个rwx:文件所有者同组(group)的其他人有读写运行权限; 第三个rwx:其他用户组用户(other)有读写运行权限;
从第二个字符起,每个字符代表一个权限 r 表示文件可以被读(Read) ------4 w 表示文件可以被写(Write) ------2 x 表示文件可以被执行(Execute) ------1
2.2修改权限
chmod 全称 change mode
[root@localhost ~]# chmod 777 /home/user 注:仅把/home/user目录的权限设置为rwxrwxrwx [root@localhost ~]# chmod -R 777 /home/user 注:表示将整个/home/user目录与其中的文件和子目录的权限都设置为rwxrwxrwx [root@localhost ~]# chmod 777 conkyrc.sample 注:单独修改某个文件权限
3.修改组别
chown 全称 change onwer
lifang这个文件夹 所属用户是root 用户组也是root
chgrp 全称 change group
会了基础足以混饭吃,上班后会发现,增加删除组别根本涉及不到,除非是硬件组的,工作就是处理服务器的相关设定
4.查看日志
4.1tail
tail 命令用于显示指定文件末尾内容;
- tail -f test.log ===>循环查看文件内容
- tail -n 5 test.log ===>显示文件最后5行内容
- tail -n +5 test.log ===>从第5行开始显示文件
4.2head
head 用来显示档案的开头至标准输出中
- head -n 5 test.log ===>显示文件的前5行内容
- head -n -5 test.log ===>查询日志文件除了最后5行的其他所有日志
4.3cat
cat命令的用途是连接文件或标准输入并打印。这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用。
参数:
- -n 或 --number 由 1 开始对所有输出的行数编号
- -b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号
- -s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
- -v 或 --show-nonprinting
Demo:
- $ cat filename ==>一次显示整个文件
- $cat file1 file2 > file ==>将几个文件合并为一个文件
1.把三个文件的内容连接起来,然后创建sir04.txt文件,并写入sir04.txt中。如果已经存在sir04.txt 文件,会把sir04.txt内容清空。
- [root@localhost ~]# cat sir01.txt sir02.txt sir03.txt > sir04.txt
2.把一个或多个已存在的文件内容,追加到一个已存在的文件中
- [root@localhost ~]# cat sir01.txt sir02.txt sir03.txt >> sir04.txt
4.4more
more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能 。more命令从前向后读取文件,因此在启动时就加载整个文件。
参数:
- +n 从笫n行开始显示
- +/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示
Demo1:显示
- more +3 test.log ===>显示文件中从第3行起的内容
- more +/day3 test.log ===>从文件中查找第一个出现"day3"字符串的行,并从该处前两行开始显示输出
Demo2:分页
- ls -l | more -5 ===>每页显示5个文件信息,按 Ctrl+F 或者 空格键 将会显示下5条文件信息。
4.5less
less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看,但若使用了 less 时,就可以使用 [pageup] [pagedown] 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。
less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。
Demo:
- less test.log ===>查看文件
- ps -ef | less ===>ps查看进程信息并通过less分页显示
- less log2013.log log2014.log ===>浏览多个文件
Demo:全屏导航
- ctrl + F - 向前移动一屏
- ctrl + B - 向后移动一屏
- ctrl + D - 向前移动半屏
- ctrl + U - 向后移动半屏
4.6grep
grep 命令用于查找文件里符合条件的字符串。
菜鸟教程: grep参数及使用详解.
Demo:
- grep test *file ===>查找后缀有 file 字样的文件中包含 test 字符串的文件,并打印出该字符串的行。
- grep -r update /etc/acpi ===>以递归的方式查找符合条件的文件。
- cat test.txt | grep ^u ===>找出已u开头的行内容
- cat test.txt | grep hat$ ===>输出以hat结尾的行内容
5.编辑文本
所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。 vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。
三种模式:
- 命令模式(Command mode)
启动vim。就进入了命令模式 vim tomcat.conf - 插入模式(Insert mode)
按下i,切换到输入模式,左下角状态栏中会出现 –INSERT- 的字样 按Esc退出插入模式 - 底线命令模式(Last line mode)
按下:,切换到底线命令模式模式 :w 将编辑的数据写入硬盘档案中(常用) :q 离开 vi (常用) :q! 若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案。 :wq 储存后离开,若为 :wq! 则为强制储存后离开 (常用)
插入模式
- i ==>光标所在位置插入
- I ==>光标所在行的行首插入
- A ==>光标所在行行尾插入
- a ==>光标所在字符的下个字符插入
- s ==>删除光标所在字符插入
- S ==>删除光标所在行插入
- o ==>光标所在行的下一行插入
- O ==>光标所在行的上一行插入
底线命令模式:字符替换(注意:下面语句:和s中间没有空格)
- : s/vivian/sky/ ==> 替换当前行第一个 vivian 为 sky(注意空格)
- : s/vivian/sky/g ==>替换当前行所有 vivian 为 sky(注意空格)
- :n,$s/vivian/sky/ ==>替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky
- :n,$s/vivian/sky/g ==> 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky
- :%s/vivian/sky/ ==>(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky
- :%s/vivian/sky/g ==>(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky
- : s#vivian/#sky/# ==> 替换当前行第一个 vivian/ 为 sky/(注意空格)
底线命令模式:搜索
- /word ==>向光标之下寻找一个名称为 word 的字符串。
- ?word ==>向光标之上寻找一个字符串名称为 word 的字符串
- n ==>代表重复前一个搜寻的动作,执行 /word再按下 n 后,会向下继续搜寻下一个名称为word 的字符串
- N ==>与 n 刚好相反,为『反向』进行前一个搜寻动作
6.创建软链
创建硬链接(hard link):文件的基本信息都存储在 inode 中,而硬链接指的就是给一个文件的 inode 分配多个文件名,通过任何一个文件名,都可以找到此文件的 inode,从而读取该文件的数据信息。 硬链接可认为是一个文件拥有两个文件名
[root@localhost ~]# touch cangls
[root@localhost ~]# ln /root/cangls /tmp
#建立硬链接文件,目标文件没有写文件名,会和原名一致
#也就是/tmp/cangls 是硬链接文件
创建软链接(symbolic link):类似于 Windows 系统中给文件创建快捷方式
[root@localhost ~]# touch bols
[root@localhost ~]# In -s /root/bols /tmp
#建立软链接文件 注:软链接文件的源文件必须写成绝对路径,而不能写成相对路径
删除链接
[root@localhost ~]# rm -rf symbolic_name
7.查看文件大小
df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。 du可以查看文件及文件夹的大小
[yayug@yayu ~]$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 3.9G 300M 3.4G 8% /
/dev/sda7 100G 188M 95G 1% /data0
/dev/sdb1 133G 80G 47G 64% /data1
/dev/sda6 7.8G 218M 7.2G 3% /var
/dev/sda5 7.8G 166M 7.2G 3% /tmp
/dev/sda3 9.7G 2.5G 6.8G 27% /usr
tmpfs 2.0G 0 2.0G 0% /dev/shm
du命令可以循环列出所有文件和文件夹所使用的空间。所以得指定深入目录的层数,参数:–max-depth=
[root@bsso yayu]# du -h --max-depth=1 work/testing
|