首先让我们看看下面这些特殊的目录
.
符号 | 表示 |
---|---|
. | 此层目录 |
. . | 上一层目录 |
.- | 前一个工作目录 |
~ | 家目录 |
注意 : 在所有目录下面都存在 “.” 和 “. .” 两个目录,分别代表此层目录和上层目录
根目录的上一层(. .)和根目录自己(.)是同一个目录
常见的处理目录的命令有:
(1)cd : 切换目录
(2)pwd : 显示当前目录
(3)mkdir : 建立一个新目录
(4)rmdir : 删除一个空目录
范例1:使用方法
cd ~ 代表回到家目录。如果仅输入cd,代表的就是 cd ~ 的意思
范例2:利用cd快速回到上层目录
利用cd … 回到上一层目录
-p : 显示出真正的路径,而非使用链接路径
范例1:显示出链接文件的真正路径
用 ln 命令创建了链接文件test2,指向/home/czy,pwd命令加上-P选项即可显示出真正的路径
-m : 设置文件的权限,不使用默认权限
-p : 帮你你直接将所需要的目录递归创建(包含上层目录)
-p :连同上层空的目录一起删除
范例1:删除dir3,连同上层空的dir1和dir2一起删除
-a :列出全部文件(包括隐藏文件)
-d :仅列出目录本身,而不是列出目录内的文件数据
-h :将文件容量用GB/KB表示出来
-l :列出详细信息,包含文件属性和权限等数据
–full-time :以完整时间模式输出
-i :若目标文件已存在,在覆盖时会先询问操作是否进行
-p :连同文件的属性(权限、用户、时间)一起复制
-r :递归复制,用于目录的复制操作
-s :复制成为符号链接文件
-d :复制链接文件属性而非文件本身
范例1:加上-p选项,连同文件的属性一起复制
范例2:通过cp命令创建符号链接文件指向test1
范例3:复制多个文件
-f :强制删除,不会出现警告信息
-r :递归删除,常用于目录的删除
-i :删除前会进行询问
-f :如果目标已存在,不会询问而直接覆盖
-u:若目标文件已存在,且目标文件比较新才会覆盖
-i :若目标已存在,覆盖前会进行询问
范例1:移动test2文件到dir1目录
范例2:把dir1目录重命名为dir2
-b :列出行号(空白符不标行号)
-n :列出行号(和-b相反,连同空白符也会有行号)
按键 | 代表 |
---|---|
空格键 | 向下翻一页 |
q | 离开more,不再显示文件内容 |
/字符串 | 向下查找字符串这个关键词 |
按键 | 代表 |
---|---|
空格键 | 向下翻一页 |
pagedown | 向下翻页 |
pageup | 向上翻页 |
/字符串 | 向下查找字符串这个关键词 |
?字符串 | 向上查找字符串这个关键词 |
q | 离开more,不再显示文件内容 |
n | 重复前一个查找 |
-n :后面接数字,代表显示几行的意思(默认10行)
-n -100 :表示列出前面所有行数,但不包括后面100行
-n :后面接数字,代表显示几行的意思(默认10行)
-n +100 :列出100行后的数据
-a :找出所有在PATH目录中可以找到的命令
这个命令是根据PATH变量去查找执行文件的文件名
-mtime n :列出在n天前的那一天修改过内容的文件
-mtime +n :列出在n天之前修改过内容的文件
-mtime -n :列出在n天之内(包括n天本身)修改过内容的文件
范例1:列出过去24小时内修改过内容的文件
0代表目前的时间,那么可以用-mtime 3列出三天前那一天修改过内容的文件
-user name :name是使用者账号名称
-group name :name为用户组名称
-nouser :查找文件拥有者没有保存在系统中的文件
范例1:查找/home目录下属于czy的文件
-name filename :查找文件名为filename的文件
-type type :查找文件类型为type的文件
注意:find会查找子目录
范例1:在/home/czy下查找文件名为test1的文件
范例2:在/home/czy下查找包含了test这个关键词的文件
-exec command :command为其它命令,-exec后面可接其它命令来处理查找到的结果
范例1:查找/home/czy目录下包含test关键字的文件并用ls -l显示出来
{} 里面存放的是find查找的结果
-exec 代表开始
\; 代表结束
中间的ls -l {} 表示find命令的额外操作