1. vi 文件路径
如果文件不存在,就新建(文件名一致)文件;存在就打开。
两种模式:(1)按Esc键进入 指令模式;(2)按i(insert)键进入输入模式。
指令模式中:h(左)j(上)k(下)l(右) 移动光标
Ctrl+f 向下翻页,Ctrl+b 向上翻页
键盘的上下左右键和pageup、pagedown键也一样操作
输入模式中:i 键插入当前光标位置,或 a 键在光标后插入。同时进入输入模式,进行编辑,按 Esc 键再返回命令模式。
指令模式中:x 删除当前字符
dd(按两次 d)删除(剪切)当前行
cw删除当前单词,并进入编辑模式
u(undo)撤销
保存文件:在指令模式中按“:”键(冒号)或者“q”可以进入 vi 的末行模式,退出末行模式回到命令模式只要按退格键删除“:”字符即可。
输入 :wq(回车)即是保存退出,:w 保存不退出,:q! 退出不保存。
readonly文件修改后使用 :wq! 保存,比一般的保存多了一个 ! 号。
2. rm [选项] 文件路径
-f 就是直接强行删除,不作任何提示的意思。
删除文件使用实例: rm -f /var/log/httpd/access.log
删除目录使用实例: rm -rf /var/log/httpd/access
将会删除 /var/log/httpd/access 目录以及其下所有文件、文件夹。
需要提醒的是:使用这个rm -rf的时候一定要格外小心,linux没有回收站的。
3. mkdir [选项] 目录名称
-p(parents) 表示若所要创建的目录的上层目录没有创建,则会一并创建上层目录。
-m(mode) 表示创建目录时同时设置目录的权限。
示例:
(1)mkdir aaa
在当前目录下创建 aaa 目录。
(2)mkdir -p /home/www/aaa
创建 aaa 目录,如果 home/www 目录路径不存在,则将自动创建。
(3)mkdir -m 777 aaa
在当前目录下创建 aaa 目录,并且设置为可读,可写入,可执行的权限。
注意:如果提示你没有权限创建,可使用 sudo 命令提升权限然后创建。
4. cp [选项] 源文件或目录 目标文件或目录
说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。
该命令的各选项含义如下:
-a 该选项通常在拷贝目录时使用,它保留链接、文件属性,并递归地拷贝目录。
-d 拷贝时保留链接。
-f 删除已经存在的目标文件而不提示。
-i 和 f 选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。
-p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。
-r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。
5. chmod [选项] mode 文件路径/目录名称
说明: Linux/Unix 的档案存取权限分为三级: 档案拥有者、群组、其他。利用 chmod 可
以控制档案如何被他人所存取。
mode: 权限设定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],
其中 u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。
-c : 若该档案权限确实已经更改,才显示其更改动作
-f : 若该档案权限无法被更改也不要显示错误讯息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
示例:
(1)chmod ugo+r file1.txt
chmod a+r file1.txt
将档案 file1.txt 设为所有人皆可读取。
(2)chmod ug+w,o-w file1.txt file2.txt
将档案 file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写
入,但其他以外的人则不可写入。
(3)chmod u+x ex1.py
将ex1.py 设定为只有该档案拥有者可以执行。
此外chmod也可以用数字来表示权限如 chmod 777 file
r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=7。
6. chown [选项] 用户或组 文件
功能:更改某个文件或目录的属主和属组。这个命令也很常用。例如root用户把自己的一个文件拷贝给用户xu,为了让用户xu能够存取这个文件,root用户应该把这个文件的属主设为xu,否则,用户xu无法存取这个文件。
说明:chown将指定文件的拥有者改为指定的用户或组。用户可以是用户名或用户ID。组可以是组名或组ID。文件是以空格分开的要改变权限的文件列表,支持通配符。
参数:
-R 递归式地改变指定目录及其下的所有子目录和文件的拥有者。
-v 显示chown命令所做的工作。
示例:
(1)chown wang shiyan.c
将文件shiyan.c的所有者改为wang。
(2)chown -R users /home
将文件/home及其下的所有文件和子目录的属组改为users。
(3)chown -R wang:users /his
将目录/his及其下的所有文件和子目录的属主改成wang,属组改成users。
7. mv
既可以重命名,又可以移动文件或文件夹
示例:
(1)mv A B 将目录A重命名为B
(2)mv /a /b/c 将/a目录移动到/b下,并重命名为c
8. rename
除了给单个文件重命名,还可以批量文件重命名。同时,值得注意一点的是,rename命令是带3个参数而不是很多人认为的2个参数.
第一个参数:被替换掉的字符串
第二个参数:替换成的字符串
第三个参数:匹配要替换的文件模式
示例:
(1)rename test backup *.tar.gz
将test.tar.gz修改为backup.tar.gz。
(2)rename .html .htm * 或者rename html htm *.html
将200个.html后缀的文件修改为.htm后缀。
(3)rename rar zip rar*
将以rar开头的所有文件的rar全部替换为zip。
rename 支持通配符,基本的通配符有以下几个:
? 可替代单个字符
* 可替代多个字符
[charset] 可替代charset集中的任意单个字符
示例:
rename 'tr/A-Z/a-z/' * 把所有文件名中的大写改为小写
9. find <指定目录> <指定条件> <指定动作>
- <指定目录>:所要搜索的目录及其所有子目录。默认为当前目录。
- <指定条件>:所要搜索的文件的特征。
- <指定动作>:对搜索结果进行特定的处理。
如果什么参数也不加,find默认搜索当前目录及其子目录,并且不过滤任何结果(也就是返回所有文件),将它们全都显示在屏幕上。
示例:
(1)find . -name 'my*'
搜索当前目录(含子目录,以下同)中,所有文件名以my开头的文件。
(2)find . -name 'my*' -ls
搜索当前目录中,所有文件名以my开头的文件,并显示它们的详细信息。
(3)find . -type f -mmin -10
搜索当前目录中,所有过去10分钟中更新过的普通文件。如果不加-type f参数,则搜索普通文件+特殊文件+目录。
10. tar
-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。
-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出
下面的参数-f是必须的:
-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。
压缩
(1)tar –cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg
(2)tar –czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz
(3)tar –cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2
(4)tar –cZf jpg.tar.Z *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z
(5)rar a jpg.rar *.jpg //rar格式的压缩,需要先下载rar for linux
(6)zip jpg.zip *.jpg //zip格式的压缩,需要先下载zip for linux
解压
(1)tar –xvf file.tar //解压 tar包
(2)tar -xzvf file.tar.gz //解压tar.gz
(3)tar -xjvf file.tar.bz2 //解压 tar.bz2
(4)tar –xZvf file.tar.Z //解压tar.Z
(5)unrar e file.rar //解压rar
(6)unzip file.zip //解压zip