1 文件和目录操作

常⽤命令作⽤
cd 命令
cd <⽬录名>进⼊某个⽬录
cd ..回上级⽬录
cd进个⼈主⽬录
cd -回上⼀步所在⽬录
cd ~进入个人 Home 目录
ls 命令
ls -R显示子目录
ls -F查看⽬录中内容(显示是⽂件还是⽬录)
ls -a全部文件
ls -lht列表展现+易读性大小+修改时间倒序排列
ls -lS列表展现+以⽂件⼤⼩升序
mkdir 命令
mkdir <⽬录名>…创建⽬录
mkdir dir1 dir2同时创建两个⽬录
mkdir -p /tmp/dir1/dir2创建⽬录树
rm & rmdir 命令
rm -f file1强制 + 删除⽂件
rm -i file1删除文件/目录前进行询问
rm -rf dir1强制 + 删除目录+子目录
rm -rf dir1 dir2强制 + 删除多个目录+子目录
rmdir dir1删除空⽬录
rmdir -p dir1/dir2删除 dir2 空目录后,若 dir1 为空目录,则删除 dir1
mv old_dir new_dir重命名/移动⽬录
cp file1 file2复制⽂件
cp dir/* .复制某⽬录下的所有⽂件⾄当前⽬录
cp -a dir1 dir2复制⽬录
cp -r dir1 dir2递归 + 复制目录
cp -vf dir1 dir2显示复制过程 + 强制覆盖
ln -s file1 link1创建指向⽂件/⽬录的软链接
ln file1 lnk1创建指向⽂件/⽬录的物理链接
find / -name file1从跟⽬录开始搜索⽂件/⽬录
find / -user user1搜索⽤户 user1 的⽂件/⽬录
find /dir -name *.bin 在⽬录/dir 中搜带有.bin 后缀的⽂件
locate <关键词>快速定位⽂件
locate *.mp4 寻找.mp4 结尾的⽂件
tree查看⽂件和⽬录的树形结构
pwd显示当前路径
whereis <关键词>显示某⼆进制⽂件/可执⾏⽂件的路径
which <关键词>查找系统⽬录下某的⼆进制⽂件
which -a <关键词>如果有多个匹配结果则打印所有结果

2 打包和解压

常用命令作用
zip xxx.zip file压缩 zip 包
zip -r xxx.zip file1 file2 dir1压缩 zip 包(多文件+目录)
unzip xxx.zip解压 zip 包
zipinfo列出 zip 包中的压缩文件信息
tar -cvf xxx.tar file创建非压缩 tar 包
tar -cvf xxx.tar file1 file2 dir1创建非压缩 tar 包(多文件+目录)
tar -zcvf xxx.tar.gz dir创建 gzip 压缩包
tar -jcvf xxx.tar.bz2 dir创建 bz2 压缩包
tar -tf xxx.tar查看 tar 包的内容
tar -xvf xxx.tar解压 tar 包
tar -xvf xxx.tar -C /dir解压 tar 包到指定目录
tar -zxvf xxx.tar.gz解压 gzip 压缩包
tar -jxvf xxx.tar.bz2解压 bz2 压缩包
tar -vf test.tar —delete ./a.txt删除 tar 包中指定文件
gunzip xxx.gz解压 gzip 压缩包
gzip filename创建 gzip 压缩包
gzip -9 filename创建 gzip 压缩包(最大压缩率)
bunzip2 xxx.bz2解压 bz2 压缩包
bzip2 filename压缩⽂件

2.1 tar

tar:pack & unpack, no compression by default.
参数:-c create,-x 解开,-f file,-v verbose, -k keep-old-files, -t list

2.2 zip 与 unzip

zip 命令

  1. 命令:zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目录>][-ll][-n <字尾字符串>][-t <日期时间>][压缩文件][文件...][-i <范本样式>][-x <范本样式>]
  2. 常用参数
-f 更新现有的文件
-u -f 参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中
-d 删除 zip 中指定文件
-j 只保存文件名称及其内容,而不存放任何目录名称
-m 压缩后,删除原始文件(相当于移动到 zip 中)
-q 静默执行
-r 递归处理
-i<范本样式> 只压缩符合条件的文件
-x<范本样式> 压缩时排除符合条件的文件
 
# 将 /home/html/ 这个目录下所有文件和文件夹打包为当前目录下的 html.zip:
zip -q -r html.zip /home/html
# 如果在我们在 /home/html 目录下,可以执行以下命令:
zip -q -r html.zip *
# 从压缩文件 cp.zip 中删除文件 a.c
zip -dv cp.zip a.c

unzip 命令

  1. 命令:unzip [-cflptuvz][-agCjLMnoqsVX][-P <密码>][.zip 文件][文件][-d <目录>][-x <文件>]
  2. 解压操作,常用参数
-f 更新现有的文件。
-u 与-f 参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中。
-n 不覆盖原文件。
-o 不必先询问用户,unzip 执行后覆盖原有文件。
-P <> 使用 zip 的密码选项。
-q 静默执行
-l 显示内部文件
-v 显示内务文件详细信息
[.zip 文件] 指定.zip 压缩文件。
[文件] 指定要处理.zip 压缩文件中的哪些文件。
-d <> 解压到特定目录
-x <> 不解压 zip 中特定文件
 
# 查看压缩文件中包含的文件
unzip -l abc.zip

2.3 gzip & gunzip

gzip 命令

将每个文件压缩为 .gz 格式

-d   解开压缩文件。
-f   强行压缩文件。不理会文件名称或硬连接是否存在以及该文件是否为符号连接。
-l   列出压缩文件的相关信息。
-n   压缩文件时,不保存原来的文件名称及时间戳记。
-N   压缩文件时,保存原来的文件名称及时间戳记。
-q   不显示警告信息。
-r   递归处理,将指定目录下的所有文件及子目录一并处理。
-v   显示指令执行过程。
-<压缩效率>  压缩效率是一个介于 1-9 的数值,预设值为"6",指定愈大的数值,压缩效率就会愈高。
--best  此参数的效果和指定"-9"参数相同。
--fast  此参数的效果和指定"-1"参数相同。
 
# 压缩文件
gzip *  # 将文件压缩,替换为 .gz 文件
# 解压文件,并列出详细信息
gzip -dv *
# 显示压缩文件的信息
gzip -l *

gunzip 命令

  1. .gz 格式进行解压缩
-d 解压缩,默认,省略
-f 强制解压缩
-k 保留原始 gz 文件
-l 显示信息
-v 显示详细信息
-n 不覆盖
-q 静默执行
-r 递归执行
 
# 解压缩文件
gunzip example.txt.gz