一:目录相关
- 查看文件当前所在目录:pwd
- 查看当前当前目录下文件:ls
- 列表形式查看当前目录下文件(内容解释如下):ll
-
第一列:表示文件类型:
“-”表示普通文件; “d”表示目录; “l”表示链接文件; “p”表示管理文件; “b”表示块设备文件; “c”表示字符设备文件; “s”表示套接字文件;
-
第二列:表示文件属性:
文件属性由三部分组成,如bin的属性可以看成是:[rwx] [r-x] [- - -]
第一段表示文件创建者/所有者对该文件所具有的权限,第二段表示创建者/所有者所在的组的其他用户所具有的权限,第三段表示其他组的其他用户所具有的权限。- r(Read,读取权限,数字4):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。
- w(Write,写入权限,数字2):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。
- x(eXecute,执行权限,数字1):对文件而言,具有执行文件的权限;对目录来说,该用户具有进入目录的权限。
另外还有2个特殊属性:
- s或S(SUID,Set UID):可执行的文件搭配这个权限,便能得到特权,任意存取该文件的所有者能使用的全部系统资源。请注意具备SUID权限的文件,黑客经常利用这种权限,以SUID配上root帐号拥有者,无声无息地在系统中开扇后门,供日后进出使用。
- t或T(Sticky):/tmp和 /var/tmp目录供所有用户暂时存取文件,亦即每位用户皆拥有完整的权限进入该目录,去浏览、删除和移动文件。
例:对于bin,创建者巨有读写执行权限,创建者所在的组的其他用户巨有读和执行的权限,其他用户没有操作这个文件的权限
-
第三列:目录/链接个数
- 对于目录文件,表示它的第一级子目录的个数。注意此处看到的值要减2才等于该目录下的子目录的实际个数。比如此lib下是没有文件的,这里显示的是2,这是因为要加上.目录和…目录。在linux下,.目录表示当前目录,…目录表示上一级目录。
- 对于其他文件,表示指向它的链接文件的个数。
-
第四列:所有者,及其所在的组
-
第五列:大小、修改时间,文件名
-
文件大小如果是文件时则是文件大小,如果是目录则是该目录符所占的大小,并不是代表
-
文件的字体颜色:
灰白色表示普通文件; 亮绿色表示可执行文件; 亮红色表示压缩文件; 灰蓝色表示目录; 亮蓝色表示链接文件; 亮黄色表示设备文件;
-
-
二:文件操作相关
- -f:强行删除不做提示 -r向下递归
- 创建目录:mkdir
例:mkdir abc - 创建文件:touch
例:touch abc.conf - 删除文件:rm -f
例: rm -f /home/abc.war - 删除目录:rm -rf
例:rm -rf /home/tomcat 删除tomcat目录及此目录下所有文件 - 复制文件:cp
例:cp /opt/tomcat/webapps/abc.war /home/abc.war - 修改文件名称/移动文件:mv
例:移动文件:mv /opt/tomcat/webapps/abc.war /home/abc.war
重命名:mv /home/abc.war /home/aaa.war
三:文件查看相关
cat:查看文件内容
- 语法:cat [参数] fileName [ | grep 关键字]
- 一般查看比较小的文件,一屏幕能显示全的。
- cat 只能浏览文件,而不能修改文件。
- 会打开整个文件,直接跑到最后面
参数 | 说明 |
---|---|
grep 关键字 | 搜索关键字附近的日志 |
-n 或 --number | 由 1 开始对所有输出的行数编号 |
-b 或 --number-nonblank | 和 -n 相似,只不过对于空白行不编号 |
-s 或 --squeeze-blank | 当遇到有连续两行以上的空白行,就代换为一行的空白行 |
-v 或 --show-nonprinting | 使用 ^ 和 M- 符号,除了LFD 和 TAB 之外 |
-E 或 --show-ends | 在每行结束处显示$ |
-T 或 --show-tabs | 将TAB 字符显示为 ^I |
-A, --show-all | 等价于-vET |
-e | 等价于"-vE"选项 |
-t | 等价于"-vT"选项 |
- 示例:
- cat -n test.log | grep “关键词” 得到关键词的行号
- cat filename | grep -C 5 ‘关键字’ (显示日志里匹配字串那行以及前后5行)
等价于:cat -n test.log | tail -n +92 | head -n 20
cat filename | grep -B 5 ‘关键字’ (显示匹配字串及前5行)
等价于:cat -n test.log | head -n 20
cat filename | grep -A 5 ‘关键字’ (显示匹配字串及后5行)
等价于:cat -n test.log | tail -n +92 - 查看文件内容并显示行号:
- 将几个文件合并成一个文件
- 将text1的文档内容加上行号输入到file中:
- 清空 /etc/test.txt 文档内容:
原理:将一个将空的写件写入到目标文件中
more:分屏查看文件内容
- 以全屏幕的方式按页显示文本文件的内容,一次展示文件全部内容
- more指令中内置了若干快捷键
- 可以上下翻页,上下行移动显示,分屏显示
- 语法:more 要显示文件
操作 | 功能 |
---|---|
空白键 (space) | 向下翻一页 |
Enter | 向下翻一行 |
q | 立刻离开 more ,不再显示该文件内容 |
Ctrl+F | 向下滚动一屏 |
Ctrl+B | 返回上一屏 |
= | 输出当前行的行号 |
:f | 输出文件名和当前行的行号 |
less:分屏显示文件内容
- 和more类似,但功能更强大,支持各种显示终端
- 但不能往回翻页
- 在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
- 语法:less 要显示的文件
操作 | 功能 |
---|---|
空白键 | 向下翻动一页 |
pagedown | 向下翻动一页 |
pageup | 向上翻动一页 |
/字串 | 向下搜寻『字串』的功能;n:向下查找;N:向上查找 |
?字串 | 向上搜寻『字串』的功能;n:向上查找;N:向下查找 |
q | 立刻离开 less 这个程序 |
head:输出文件头部内容
- head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容。
- 语法:head [选项] 文件 :查看文件头10行内容
选项 | 说明 |
---|---|
-n <行数> | 指定显示前n行的内容 |
- 例:
head -n 10 test.log 查询日志文件中的头10行日志;
head -n -10 test.log 查询日志文件除了最后10行的其他所有日志;
tail: 实时输出文件尾部内容
- 用于输出文件中尾部的内容,默认情况下tail指令显示文件的后10行内容。
- 语法:tail [选项] 文件:查看文件后10行内容
选项 | 说明 |
---|---|
-n <行数> | 指定显示后n行的内容 |
-f | 显示文件最新追加的内容,可用来监视文件变化 |
- 例:
tail -n 10 test.log 查询日志尾部最后10行的日志;
tail -n +10 test.log 查询10行之后的所有日志; - 例:
tail -f test.log 实时监控日志
tail -100f test.log 实时监控100行日志
四:文件权限相关
-
上面解释过r,w,x代表的权限,其中r=4,w=2,x=1,所以比如rwxr–r–权限对应的数字就是744
例:常见的一些权限-rw------- (600) 只有所有者才有读和写的权限 -rw-r--r-- (644) 只有所有者才有读和写的权限,组群和其他人只有读的权限 -rwx------ (700) 只有所有者才有读,写,执行的权限 -rwxr-xr-x (755) 只有所有者才有读,写,执行的权限,组群和其他人只有读和执行的权限 -rwx--x--x (711) 只有所有者才有读,写,执行的权限,组群和其他人只有执行的权限 -rw-rw-rw- (666) 每个人都有读写的权限 -rwxrwxrwx (777) 每个人都有读写和执行的权限
-
同时文件的权限对应三个用户,分别是,所有者、同组、其他人
u 代表所有者(user) g 代表所有者所在的组群(group) o 代表其他人,但不是u和g (other) a 代表全部的人,也就是包括u,g和o
-
修改文件权限:
chmod 权限数字 文件
例:chmod 777 abc
给目录abc添加所有人都可以读写执行权限
chmod 754 abc
给abc添加当前用户所有,同组读执行,其他人读的权限- 给某个用户添加或删除某个权限:
chmod 用户 权限 文件
例:chmod o +w abc.txt
给其他用户添加写的权限,+号可以不屑
chmod o -w abc.text
删除其他用户写的权限
chmod go -rw abc.txt
删除同组及其他人读写的权限
chmod ug+w,o-x text
给当前和组添加写,其他人删除执行权限 - 修改文件用户及所属组(-R代表递归修改此文件下的所有文件及文件夹)
- 修改文件所属用户:
chown (-R) 用户 文件
例:chown tom abc.txt
chown -R tom abc
- 修改文件所属组:
chgrp (-R) 组 文件
;chown :组 文件
例:chgrp group abc.txt 或 chown :group abc.txt
chgrp -R group abc 或 chown -R :group abc
- 组和用户一起修改:
chown 用户:组 文件
例:chown tom:group abc
- 修改文件所属用户:
五:文件编辑相关
-
打开文件vi(如/etc里面有一个文件hosts,要打开这个文件执行vi hosts)
-
进入编辑模式i,a(打开hosts后不能进行编辑,输入i之后出现—insert就进入编辑模式可以进行编辑了)
-
退出编辑模式,按下Esc
-
进入命令模式,按下:
-
退出但不保存q!
-
退出保存wq或x
-
保存w
参考:
https://blog.csdn.net/zbj18314469395/article/details/79884857
https://blog.csdn.net/LEON1741/article/details/82386520?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task
https://www.cnblogs.com/kbkiss/p/7567725.html
https://blog.csdn.net/lianghecai52171314/article/details/104503991