第三课 目录与文件进阶操作
cat (一次性全部输出文件内容)
cat -n 文件名 显示行号
cat -b 文件名 空行不显示行号
less (分页显示,可以上下翻页,光标键上下键,PageUp PageDown)
less -N 文件名 显示行号
tail(从文件末尾处显示,默认为10行)
tail -数字 文件名 指定显示多少行
tail -f 文件名 持续显示文件的动态更新,l例如log的内容增加
head (从文件开始处显示,默认为10行)
head -数字 文件名 指定显示多少行
ls (查看当前目录的内容)
ls -a显示所有文件
ls -l显示文件或目录的详细信息
通配符:允许用户依据字符模式选择文件名。
(1)通配符是由shell处理的
(2)作用是提供一些殊字符来帮助快速指定或者筛选一组文件名
(3)与文件名相关的命令常常会使用到通配符 ls find cp mv
字符模式:
* 匹配任意多个字符(零个或者多个)
? 匹配任意单一字符(占位符)
[] 匹配任意一个属于字符集中的字符
{} 匹配任意一个属于字符串集中的一组字符串,字符串之间用“,”分隔
创建文件或者目录
touch a.txt (空文件)
vi b.txt
mkdir abc
mkdir -p a/ab/abc/abcd
cp 复制文件,把文件或者目录复制到哪儿 要求原文件或者目录存在,目标路径存在
路径可使用绝对路径也可以使用相对路径
可以同时复制多个文件或者目录,可以使用通配符
同目录下就是备份并改名操作
cp -p 常用于备份配置文件
cp -r 复制目录
mv 剪切粘贴
对于文件来说 mv f1 f2 同目录下就是改名操作
对于文件夹或者目录来说 mv d1 d2 同目录下文件夹的操作,
如果d2不存在就是改名,如果d2存在,就是把d1剪切到d2下
软链接与硬链接
软链接是指向文件名的,类似于Windows的快捷方式
硬链接是指向文件系统的inode号的,innode关联到物理地址
命令查找:
which命令是查找命令是否存在,以及命令的存放位置在哪儿
whereis命令只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。
xxd查看二进制文件
文件查看:
find是最常用和最强大的查找命令。它能做到实时查找,精确查找,但速度慢。
find [指定目录] [指定条件]
-type
-name
-user
-group
-perm
-ctime -n +n -n是n天以内,+n是n天以前
-mtime
-atime
文本关键字搜索:
grep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来
(1)关键字查找要注意大小写敏感
(2)grep命令支持正则表达式,正则表达式定义匹配规则,与通配符功能类似,但通配符是shell支持的。
(3)当前只需要关注以“^abc”开头,以“abc$”为结尾的正则表达式
(4)正则表达式中.表示任意一个字符,*表示前一个字符要重复0次或者多次,如ooo*代表的是字符串中只要含有两个o或者以上的字符串
grep -c 匹配行数的个数
grep -i 不区分大小写
grep -n 显示出匹配的行号以及内容
grep -v 反选
grep -F 指明patten非正则表达式
文件内容统计:
wc -l /ect/password 文件有多少行
wc -c /ect/password 文件有多少字节
查看目录使用空间
du -sh 文件和目录的大小
du -ah 所有文件和目录的大小
df -h 磁盘空间使用情况
分隔文件:
split -b 数字 按文件大小分隔
split -l 数字 按文件行数分隔
合并文件:
cat abc* >> abc.txt