二、linux文件与目录常用命令

时间:2022-09-20 17:56:53

【文件与目录操作命令】

1、ls命令:用于显示指定目录下的内容

语法:ls [-option] [file]

常用参数:

       -a:显示所有文件和目录。包含隐藏文件和目录

       -l:显示文件和目录的完整属性信息

[root@localhost test0]# ls           //显示当前目录下的文件
[root@localhost test0]# ls -a        //显示当前目录下的所有文件,包含隐藏文件和目录
[root@localhost test0]# ls -l        //显示当前目录下的文件和目录的完整属性信息

2、cd命令:是change directory的缩写,用于改变当前路径

语法:cd [相对路径或绝对路径]

./指的是当前目录

../指的是当前目录的上一级目录

[root@localhost ~]# cd test0/           //进入test0目录
[root@localhost test0]# cd test1/       //进入test1目录
[root@localhost test1]# cd ./           //进入当前目录
[root@localhost test1]# cd ../          //返回上一级目
[root@localhost test1]# cd ~ //回到自己的属主目录

3、pwd命令:用于显示当前所在的目录

语法:pwd

[root@localhost test1]# pwd

4、mkdir命令:用于创建目录,目录可以是相对路径也可以是绝对路径

语法:mkdir [-option] 目录名称

常用参数:

       -p:当建立的父目录不存在时,同时建立父目录

[root@localhost test0]# mkdir test1                //创建目录
[root@localhost test0]# mkdir test2 test3 test4    //创建多个目录
[root@localhost test0]# mkdir "test 5"             //创建带空格的目录
[root@localhost test0]# mkdir -p test6/test7       //创建多个层级的目录 

5、rmdir命令:用于删除目录,目录可以是相对路径也可以是绝对路径,但需要注意的是,目录必须为空目录

语法:mkdir 目录名称

[root@localhost test0]# rmdir test4             //删除目录
[root@localhost test0]# rmdir -p test6/test7    //删除多个层级的目录

6、 cp命令:用于复制文件

语法:cp [-option] 源 目标

常用参数:

       -r:递归处理,将指定目录下的文件与子目录一并处理

[root@localhost test0]# cp -r test1 test4      //将test1复制成test4

7、rm命令:用于删除文件

语法:rm [-option] 文件名

常用参数:

       -f:force,强制删除,不提示用户是否需要删除的信息

       -r:循环删除,常用于目录删除

[root@localhost test0]# rm test.txt          //删除test.txt文件
rm: remove regular file `test.txt'? n
[root@localhost test0]# rm -f test.txt       //强制删除test.txt文件
[root@localhost test0]# rm -r test1          //循环删除test1/test11目录
rm: descend into directory `test1'? y
rm: remove directory `test1/test11'? y
rm: remove directory `test1'? y
[root@localhost test0]# rm -rf test2         //强制循环删除test2

8、mv命令:用于移动文件或目录

语法:mv 源 目标

[root@localhost test0]# mv test3 test4       //将test3目录移动到test4下

【查看文件内容命令】

9、cat命令:是concatenate的简写,用于将一个文件的内容连续输出到屏幕上

语法:cat [-option] 文件名

常用参数:

       -n:连行号一起显示在屏幕上

[root@localhost ~]# cat -n /etc/inittab     //将etc目录下的inittab文件的内容显示出来,并显示行号

10、more命令:和cat类似,同样是在屏幕上显示文件内容,但是如果文件内容太多,超过40行,cat会一闪而过,more则会在显示完一屏后停下,等待用户往下翻

语法:more 文件名

[root@localhost ~]# more /etc/inittab       //将etc目录下的inittab文件的内容显示出来(回车是单行下翻,空格是整页下翻,b键是整页上翻,内容显示百分比)

11、less命令:和more一样,唯一区别就是可以使用上下键进行上翻和下翻,比more更方便一些

语法:less 文件名

常用参数:

       -N显示每行的行号

[root@localhost ~]# less /etc/inittab            //按q可以退出less命令

12、head命令:用于显示文件的头几行内容(默认显示10行)

语法:head [-option] 文件名

常用参数:

       -n:指定显示多少行

[root@localhost ~]# head -3 /etc/inittab        //将etc目录下的inittab文件显示前3行

13、tail命令:用于显示文件的尾几行内容(默认显示10行)

语法:tail [-option] 文件名

常用参数:

       -n:指定显示多少行

[root@localhost ~]# tail -3 /etc/inittab        //将etc目录下的inittab文件显示尾3行

【搜索文件或目录】

14、which命令:用于查找可执行文件的位置

语法:which 文件名

[root@localhost ~]# which passwd               //查找passwd文件在哪
/usr/bin/passwd

15、find命令:可以对指定目录以及其所有子目录进行文件搜索

语法:find [path] [-option] 文件名

常用参数:

       -name:通过名称来搜索

       -size:大小 +大于 -小于 不加也不减表示等于

       -type:f文件 d目录 l链接

       -user:所属用户

       多个条件组合:-a(and并且) -o(or或者)

[root@localhost ~]# find /etc -name '*httpd*'           //查找etc目录下文件名包含httpd的文件
[root@localhost ~]# find -size +50                      //查找文件大小大于50k的文件
[root@localhost ~]# find -type l                        //查找文件类型为链接的文件
[root@localhost ~]# find -user root                     //查找所属用户为root的文件

16、locate命令:在数据库文件/var/lib/mlocate.db搜索,效率比find高

语法:locate文件名

[root@localhost ~]# locate passwd                       //使用时可以先使用updatedb命令手动更新数据库