# cd、pwd、ls、clear、mkdir、touch、rm、cp、mv、tree、chmod、find、grep、重定向>、ln 软链接、硬链接 、压缩zip tar 、exit 等等
----------------------------------------------------------------------------------------------------------------------------------
1.touch 如果文件不存在则创建,如果文件已存在不会创建(覆盖)
2.mkdir 创建目录 如果目录和文件名重名:
先存在文件或目录,再创建目录 —— 报错:文件已存在,无法创建
新建目录的名称不能与当前目录中已有的目录或文件同名
先存在目录,再touch同名文件,则不会报错,也不会创建(覆盖)存在的目录
可以递归创建目录 mkdir 1/2/3/4/4 -p
递归创建(新建)的目录和子目录可以重名
3.rm 删除指定的文件名
如果指令后面接多个文件或目录,则会删除命令后所有文件的同时,提示:xxx不是文件;
如果在上述命令后增加选项 -r ,则会删除命令后面指定的文件或文件夹,但是提示:XXX文件不存在。
提示:有报错提示,但是不影响指令的执行
-r 递归地删除目录下的内容,删除文件夹时必须加此参数
-f 强制删除,忽略不存在的文件,无需提示
-i 以进行交互式方式执行
5.查阅命令帮助信息:
“command” --help # eg: rm --help
man “command” # eg:man rm
man是manual的缩写,和其配套的还有b,f,j,k,enter键,空格键,q(退出),\word # word是要查找的字符串
6.cp 路径/操作文件名 路径/目标文件名
文件名->文件名:如果目标文件名已经存在,则会覆盖,这个和touch不同
目录->目录:如果操作的是目录名,则 操作的是该目录内的所有内容
目录->目录:如果操作的是目录名,则 后面需要加选项 -r
目录->目录:如果操作的是目录名,则 后面必须也是一个目录
目录->目录:如果目标路径不存在,则 创建路径(目录)
文件名->目录/文件名:目录必须已经存在,否则报错;
-a 该选项通常在复制目录时使用,它保留链接、文件属性,并递归地复制目录,简单而言,保持文件原有属性。
-f 已经存在的目标文件而不提示
-i 交互式复制,在覆盖目标文件之前将给出提示要求用户确认
-r 若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名。
-v 显示拷贝进度
7.cd :切换目录:
后面不接参数和选项,则 切换到当前用户的主目录
cd . & cd .. & cd ~ & cd - ...
8.mv : 移动、重命名
操作路径/文件名 -> 目标路径/目标文件名
如果目标路径存在,则 移动文件,并将路径后面的最有一个/后的内容作为新的文件名
如果目标路径不存在,则 报错
-i 确认交互方式操作,如果mv操作将导致对已存在的目标文件的覆盖,系统会询问是否重写,要求用户回答以避免误覆盖文件
-f 禁止交互式操作,如有覆盖也不会给出提示
-v 显示移动进度
9.重定向命令:> & >>
Linux允许将命令执行结果重定向到一个文件,本应显示在终端上的内容保存到指定文件中。
如:ls > test.txt ( test.txt 如果不存在,则创建,存在则覆盖其内容 )
所谓重定向:修改了默认的输出(显示)方向
重定向可以用来合并文件
> 先清空后添加
>> 不清空,追加到文件的尾部
10.1.cat 查看文件内容,直接显示到终端
10.2.more 分屏显示
查看内容时,在信息过长无法在一屏上显示时,会出现快速滚屏,使得用户无法看清文件的内容,此时可以使用more命令,每次只显示一页,按下空格键可以显示下一页,按下q键退出显示,按下h键可以获取帮助
10.3.管道:|
一个命令的输出可以通过管道做为另一个命令的输入。
ls -lh | more
11.软连接、硬链接:ln
软链接:软链接不占用磁盘空间,源文件删除则软链接失效。
硬链接:硬链接只能链接普通文件,不能链接目录。
硬链接格式:ln 源文件 链接文件
软连接格式:ln -s 源文件 链接文件
注意:如果软链接文件和源文件不在同一个目录,源文件要使用绝对路径,不能使用相对路径。
涉及到在当前的文件夹查找文件名,如果相对路径,之后又把文件移动到原来的位置还是可以用的。
修改软连接打开的文件的时候,对应的文件也会修改。
修改硬链接打开的文件的时候,对应的原文件也会修改。
修改源文件后,通过软连接、硬链接打开都可以看到对应修改后的文件。
修改源文件后,对应的多个软、硬链接的文件都会跟着改变。
硬链接是同一个文件内容,多个不同文件名,执行ll会显示。
12.查看或者合并文件内容:cat
相对路径查看
绝对路径查看
合并:如:cat 1.txt 2.txt > 1_2.txt
13.文本搜索:grep
grep一般格式为:grep [-选项] ‘搜索内容字符串’ 文件名
-v 显示不包含匹配文本的所有行(相当于求反)
-n 显示匹配行及行号
-i 忽略大小写
grep搜索内容串可以是正则表达式
14.查找文件:find
find -name "*.txt" : 查找当前目录下以.txt结尾的文件
find -name /home/python "[0-9]" : 查找python目录下的单个数字的文件夹或者文件
find -size +50k -size -5M : 查找当前目录下文件大小在2k~5M的文件,注意这里k小写;M大写。
find ./ -perm 777 查找当前目录下权限为777的文件或目录
15.归档管理:tar
tar使用格式 tar [参数] 打包文件名 文件
-c 生成档案文件,创建打包文件
-v 列出归档解档的详细过程,显示进度
-f 指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后
-t 列出档案中包含的文件
-x 解开档案文件
注意: 除了f需要放在参数的最后,其它参数的顺序任意。
tar -cvf test.tar * : 将当前目录内所有文件打包成文件名为test.tar
tar -xvf test.tar : 解压刚才的文件。
16.1. 文件压缩解压:gzip
tar与gzip命令结合使用实现文件打包、压缩。 tar只负责打包文件,但不压缩,用gzip压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz。
gzip格式:gzip [选项] 被压缩文件
-d 解压
-r 压缩所有子目录
gzip -r test.tar test.tar.gz
可以简写:gzip test.tar
gzip -d test.tar.gz
解压缩,注意哟:下面的都是tar命令