linux(centOS7)的基本操作(二) 目录和文件管理

1.显示当前工作目录的绝对路径

pwd

2.显示当前工作目录下的子目录和文件

ls [-l] [-h] [-a]

如果只调用ls,子目录和文件会简单的罗列出来,-l表示将其以详细列表的形式展示,-h表示以适合人阅读的格式显示,-a表示同时显示隐藏目录或文件,即以点(.)开头的,例如/root/.ssh

3.切换工作目录

cd [path]

其中,path为要切换到的目标目录,可以使用绝对路径或相对路径。path为空或~时,表示切换到当前登录用户的家目录;path为两个点(..)时,表示切换到当前目录的上一级目录。下面是一个应用示例

 

如图,假设当前目录在opt,现在想切换到rpm,

使用绝对路径:cd /usr/lib/rpm;

使用相对路径:cd ../../usr/lib/rpm。

4.创建目录

mkdir [-p] path

其中,path为要创建的目录,可以使用绝对路径(以/开头)或相对路径;-p是指创建多级目录。例如,要在当前目录下创建/animal/dog目录,如果只输入mkdir animal/dog,则会返回错误提示:无法创建目录,没有那个文件或目录。原因是当前目录下根本没有/animal这一级目录,现在相当于要一次性创建两级目录,因此要使用mkdir -p animal/dog。注意这时不能用mkdir -p /animal/dog,因为这是绝对路径,意思是要在根目录下创建这两级目录。

5.删除空目录

rmdir path

其中path为要删除的目录,这个命令只能删除空目录,即下面没有子目录和文件;第二个命令可以删除空或非空的目录。

6.删除文件或目录

rm [-r] [-f] source

其中source为要删除的文件或目录,当其为目录时,必须加-r。-f的意思是强制删除不提示。

7.创建空文件

touch file1 [file2 file3  ...]

其中file1为文件名,该命令支持一次性创建多个文件,文件名中间以空格( )间隔。例如,touch hello.txt abc.txt,即在当前目录下创建了两个空文件。

8.复制文件或目录

cp [-r] source dest

其中,source为要复制的文件或目录,当其为目录时,需要加-r,表示"递归复制整个目录",当其为文件时,不需要加-r,加了也没有效果;desc为要复制到的目标目录,可以使用绝对路径或相对路径。例如,现在要将当前目录下的/document/aaa.txt复制到当前目录下的/file目录下,可以使用cp document/aaa.txt file;而如果想要将当前目录下的/document目录整个复制到/file目录下,需要使用cp -r document file。

9.移动文件或目录,重命名

mv source dest

这个命令有两个作用:移动、重命名。

当用作移动时,source为要移动的文件或目录,dest为目标目录;

当用作重命名时,source和dest要么都是文件,要么都是目录,而且是同一个位置。

10.打开文件

cat [-n] file [|more]

其中,file为要打开的文件。这个命令跟vim的区别是,以只读方式打开文件,不能编辑 。-n的意思是显示行号;|more的意思是分页显示,回车键往下翻一行,空格键往下翻一页,q键退出。

more file

其中,file为要打开的文件。这个命令会以全屏分页的方式显示文件,回车翻一行,空格翻一页,q键退出。

less file

其中,file为要打开的文件。这个命令跟more很相似,区别是不会一次性加载整个文件,而是每次加载要显示的部分,空格翻页,q键退出。

11.输出内容到控制台

echo content

其中,content是要输出的内容;特别的,当content=$PATH时,会输出linux的环境变量。

12.覆盖文件或追加内容

>:用内容覆盖文件,即替代文件原来的内容

>>:保留文件原来的内容,将内容追加到文件末尾

这两个符号通常跟别的命令合用,以确定上面所说的"内容",例如:

ls -l > file

ls -l >> file

其中,file为文件,这个命令会将当前目录下的文件以列表的形式写到文件中;

cat source > file

cat source >> file

其中,source为源文件,file为目标文件,这个命令会将source文件的内容写到file文件中。

echo content > file

echo content >> file

其中,source为内容,file为目标文件,这个命令会将content写到文件中。

这两个符号还可以跟其他的命令合用,总之就是用前面的命令产生"内容",然后用内容替代文件或追加到文件末尾。

13.显示文件开头

head [-n numberfile

其中,number为显示的行数,file为要显示的文件,如果不加-n选项,则默认显示前10行。

14.显示文件末尾

tail [-n numberfile

其中,number为显示的行数,file为要显示的文件,如果不加-n选项,则默认显示末尾10行。

15.监控文件

tail -f file

其中,file为要监控的文件,当该文件有最新更新时,会实时显示,ctrl+c退出。

16.创建快捷方式

ln -s target name

其中,target为快捷方式要指向的文件或目录,name为快捷方式名称。例如,在当前用户的家目录下要建立到/etc/X11/applnk目录的快捷方式,则使用命令:ln -s /etc/X11/applnk query,然后cd query,就进入到指定目录下。要删除快捷方式,按照删除文件或目录的方式即可,即调用rm命令。

17.查找文件或目录

find path [-name] name

按名称查找,其中path为查找范围目录,name为文件或目录的名称,可以使用通配符,例如*.txt,hello.*。

find path [-size] capacity

按大小查找,其中path为查找范围目录,capacity为容量,例如+20M表示超过20M,-100k为小于100k。

find path [-user] username

按所属用户查找,其中path为查找范围目录,user为用户名。

18.在文件中查找内容

grep [-n] [-i] content file

其中,content为要查找的内容,file为文件,-n表示显示行号,-i表示忽略大小写。例如,要在当前目录的aaa.txt文件中查找may,显示行号且忽略大小写,调用命令:grep -ni may aaa.txt。

另外,grep命令经常跟管道符合用,例如:

cat file | grep [-n] [-i] content

管道符的作用是将第一个命令的处理结果,作为第二个命令的参数。

猜你喜欢

转载自www.cnblogs.com/dubhlinn/p/11031051.html