版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Tourior/article/details/84779893
linux文件\文件夹操作常用指令
文件夹权限
-
r–read 读权限
-
w–write 写权限
-
x–execute 执行
-
d rwx rwx rwx
- d – 代表文件类型 : d代表文件夹 ;- 代表普通文件; c 代表硬件字符设备; b代表硬件块设备; s代表管道文件; l 代表软链接文件;
- 第一组rwx – 创建文件的用户的权限;
- 第二组rwx – 文件的所属组的权限;
- 第三组rwx – 其他用户的权限;
文件管理
- ls
- -a 显示指定目录下所有子目录与文件,包括隐藏文件
- -l 以列表的方式显示文件的详细信息
- -h 配合-l以人性化的方式显示文件的大小 (按照Mb的方式显示大小)
- ll 等价于 ls -all
- 通配符
- * 匹配任意多个字符 a* 一个以上 256以下的字符
- ?匹配任意一个字符 a? 两个字符 且以a 开头
- [a-z] 区间法 匹配a到z的所有字符 只能确定一个字符
- [abcde] 穷举法 匹配abcde字符 只能确定一个字符
- \* 转义
输出重定向
-
输出重定向 > 新的输出会覆盖原有的
- ls > ls.txt 将ls的结果输出到ls.txt中
-
附加重定向 >> 在文件的末尾追加
分屏显示 more
- | 管道命令 一个命令的输出可以通过管道作为另一个命令的输入
- ls | more
删除
- rm
- -r 递归删除删除 rm -r 可用来删除含有文件的文件夹
- -i 交互式删除 删除前会有询问
- -f 强制删除 忽略此文件是否存在
创建目录
- mkdir mkdir /test/test1 -p 递归创建文件夹
链接文件
- 硬链接 ln 源文件 链接文件 修改源文件,链接文件也会改变(与拷贝的区别)
- 软链接 ln -s 源文件 链接文件
查看或者合并文件内容
- 查看文件内容 cat 1.txt
- 合并文件内容 cat 1.txt 2.txt >3.txt
文本搜索
- grep [- 选项] 搜索内容 文件
- -i 忽略大小写
- -n 显示行号
- -v 取反
参数 | 含义 |
---|---|
^a | 行首,搜寻以 m开头的行 grep -n ‘^a’ 1.txt |
ke$ | 行尾,搜寻以 ke 结束的行 grep -n ‘ke$’ 1.txt |
[Ss]igna[Ll] | 匹配 [] 里中一系列字符中的一个搜寻匹配单词signal、signaL、Signal、SignaL的行 grep -n ‘[Ss]igna[Ll]’ 1.txt |
. (点) | 匹配一个非换行符的字符 匹配 e 和 e 之间有任意一个字符,可以匹配 eee,eae,eve, 但是不匹配 ee,eaae grep -n ‘e.e’ 1.txt |
统计行数或者字数
- wc
选项 | 含义 |
---|---|
-l | 统计行数 |
-w | 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。 |
-c | 统计字节数 |
-m | 统计字符数。这个标志不能与 -c 标志一起使用。 |
查找文件
- find
命令 | 含义 |
---|---|
find ./ -name test.sh | 查找当前目录下所有名为test.sh的文件 |
find ./ -name ‘*.sh’ | 查找当前目录下所有后缀为.sh的文件 |
find ./ -name “[A-Z]*” | 查找当前目录下所有以大写字母开头的文件 |
find /tmp -size 2M | 查找在/tmp 目录下等于2M的文件 |
find /tmp -size +2M | 查找在/tmp 目录下大于2M的文件 |
find /tmp -size -2M | 查找在/tmp 目录下小于2M的文件 |
find ./ -size +4k -size -5M | 查找当前目录下大于4k,小于5M的文件 |
find ./ -perm 0777 | 查找当前目录下权限为 777 的文件或目录 |
拷贝 cp
- cp
选项 | 含义 |
---|---|
-a | 该选项通常在复制目录时使用,它保留链接、文件属性,并递归地复制目录,简单而言,保持文件原有属性。 |
-f | 删除已经存在的目标文件而不提示 |
-i | 交互式复制,在覆盖目标文件之前将给出提示要求用户确认 |
-r | 若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名。 |
-v | 显示拷贝进度 |
移动文件
- mv
选项 | 含义 |
---|---|
-f | 禁止交互式操作,如有覆盖也不会给出提示 |
-i | 确认交互方式操作,如果mv操作将导致对已存在的目标文件的覆盖,系统会询问是否重写,要求用户回答以避免误覆盖文件 |
-v | 显示移动进度 |
获取文件类型
- file a.txt
归档管理 tar 包
- tar [参数] 打包文件名 文件
参数 | 含义 |
---|---|
-c | 生成档案文件,创建打包文件 |
-v | 列出归档解档的详细过程,显示进度 |
-f | 指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后 |
-t | 列出档案中包含的文件 |
-x | 解开档案文件 |
-z | 调用gzip实现了一个压缩的功能,实行一个先打包后压缩的过程 |
- f 一定要在最后,其他顺序随意
文件压缩解压
gzxip
- tar与gzip命令结合使用实现文件打包、压缩。
- tar只负责打包文件,但不压缩,用gzip压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz。
- gzip [选项] 被压缩文件
选项 | 含义 |
---|---|
-d | 解压 |
-r | 压缩所有子目录 |
- tar这个命令并没有压缩的功能,它只是一个打包的命令,但是在tar命令中增加一个选项(-z)可以调用gzip实现了一个压缩的功能,实行一个先打包后压缩的过程。
- 压缩用法:tar cvzf 压缩包包名 文件1 文件2 …
- 解压到指定目录:-C (大写字母“C”)
bzip2
- tar与bzip2命令结合使用实现文件打包、压缩(用法和gzip一样)。
- tar只负责打包文件,但不压缩,用bzip2压缩tar打包后的文件,其扩展名一般用xxxx.tar.bz2。
- 在tar命令中增加一个选项(-j)可以调用bzip2实现了一个压缩的功能,实行一个先打包后压缩的过程。
- 压缩用法:tar cjvf 压缩包包名 文件…(tar jcvf bk.tar.bz2 *.c)
- 解压用法:tar xjvf 压缩包包名 (tar jxvf bk.tar.bz2)
zip、unzip
- 通过zip压缩文件的目标文件不需要指定扩展名,默认扩展名为zip。
- 压缩文件:zip [-r] 目标文件(没有扩展名) 源文件
- 解压文件:unzip -d 解压后目录文件 压缩文件
PS:传智黑马课程学习笔记