Day6 文件目录的创建与删除

概述

  • 在windows中我们经常用到创建文件和删除文件,操作方法也很简单,就是直接右键新建或删除,再或者直接拖入回收站。在linux的图形界面中,我们也可以进行类似的操作。那么在命令行的界面中我们该如何实现呢?本文就是要讲这个东西。
  • 在命令行的界面下,文件都是以字符的样子展示在我们的面前。我们不能直观的去用鼠标打开某个文件夹,所以要找到一个文件,就得找到文件存放的位置。而这个文件存放的位置,我们称之为文件的路径,而在linux中路径分为绝对路径和相对路径
  • 在创建文件前,我们需要确定文件的位置,也就是文件的路径,需要的路径没有这么办。这就需要用到命令来创建目录(mkdir)了,有创建自然也就有删除目录(rmdir)

rmdir只能删除空目录,无法删除文件,这也正是它所局限的地方,所以一般不怎么用。
man命令是使用手册,通过man指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息,几乎所有命令都能man。ps:直接按Q键可以退出手册。

  • 上面的注释里说了rmdir的不足的地方,它不行自然有顶替他的人,那个人就是rm(删除文件目录)
  • ps:文章中出现的其他命令:tree, cd, pwd, date,man,yum

相对和绝对路径

  • 绝对路径: 路径的写法是从更目录开始的,例如/usr/local/mysql
  • 相对路径: 路径的写法不是从根开始的

用法

pwd //查看当前所在路径
cd   //变更所在目录

cd后面只能跟目录名字,跟了比如文件就会报错

[root@localhost ~]# cd /etc/passwd
-bash: cd: /etc/passwd: 不是目录

cd命令 (change directory)

作用:用来变更用户所在目录,如果后面什么都不跟,就会直接进入当前用户的根目录下。

用法

  • cd //进入当前用户的根目录下
[root@localhost ~]# pwd
/root
[root@localhost ~]# cd /tmp/
[root@localhost tmp]# pwd
/tmp
[root@localhost tmp]# cd
[root@localhost ~]# pwd
/root
  • cd - //进入上一次所在的目录,有点像电视遥控器上面的返回键
[root@localhost tmp]# cd /tmp/
[root@localhost tmp]# cd /etc/
[root@localhost etc]# cd -
/tmp                                 //秘技:反复横跳
[root@localhost tmp]# cd -
/etc
  • cd ~ //进入用户的家目录(进入/root目录),进入主页快捷键
 [root@localhost home]# cd ~
[root@localhost ~]# pwd
/root
  • cd .. //进入上一级目录.就是浏览网页时候的后退键的感觉

一个点代表当前目录,两个点代表当前目录的上一级目录

[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# pwd 
/etc/sysconfig/network-scripts
[root@localhost network-scripts]# cd ..
[root@localhost sysconfig]# cd . //一个点哈
[root@localhost sysconfig]# pwd
/etc/sysconfig
[root@localhost sysconfig]# cd ..
[root@localhost etc]# cd ..
[root@localhost /]# //一直后退的结果就是根咯,宇宙起源~~
  • man cd //查看cd的其他用法。常用的基本上就是上面说到的几个,但是打开是英文怎么办。别担心!我们贴心的放上了中文版的哦

http://fanyi.baidu.com/translate(很好的方法)
http://man.linuxde.net/cd(相关地址)

创建和删除目录 mkdir/rmdir

命令 mkdir (make directory)

mkdir:用于创建目录

mkdir命令的-m选项,用于指定创建目录的权限,现在不怎么用,了解为主

  • mkdir -p //一次创建多个目录
[root@localhost ~]# mkdir /tmp/test/123   //不加选项就会报错
mkdir: 无法创建目录"/tmp/test/123": 没有那个文件或目录
[root@localhost ~]# mkdir -p /tmp/test/123
[root@localhost ~]# ls /tmp/test/
123
  • mkdir -pv //创建目录可视化
[root@localhost ~]# mkdir -vp /tmp/test/123/3/2/1
mkdir: 已创建目录 "/tmp/test/123/3"
mkdir: 已创建目录 "/tmp/test/123/3/2"
mkdir: 已创建目录 "/tmp/test/123/3/2/1"
  • date //显示时间,看看时间咯
[root@localhost ~]# date
2018年 06月 04日 星期一 19:35:37 CST

命令 rmdir (remove directory)

  • rmdir //删除目录且只能删除空目录,很局限

  • rmdir -p //级联删除空目录。用于删除空目录,后面可以使一个目录,也可以是多个目录(用空格分隔)

级联删除路径要写完整,即使目录里有目录都是不能删除的(非空)。这里的级联删除,还好我的/tmp/里有东西不然,直接给删除了,真可怕呢

[root@localhost ~]# ls /tmp/test/123/
3
[root@localhost ~]# rmdir /tmp/test/123/
rmdir: 删除 "/tmp/test/123/" 失败: 目录非空
[root@localhost ~]# rmdir -p /tmp/test/123/
rmdir: 删除 "/tmp/test/123/" 失败: 目录非空
[root@localhost ~]# rmdir -p /tmp/test/123/3/2/
rmdir: 删除目录 "/tmp" 失败: 设备或资源忙
[root@localhost ~]# ls /tmp/test/123/
ls: 无法访问/tmp/test/123/: 没有那个文件或目录
[root@localhost ~]# ls /tmp/test
ls: 无法访问/tmp/test: 没有那个文件或目录

rm命令

man命令可以查他的其他用法,这里我们只讲最常用的选项

扫描二维码关注公众号,回复: 1456987 查看本文章
  • rm -r //删除目录可以是非空目录

会询问哦,y是同意;n是不同意

  • rm -f //强制删除 并且不会询问
  • rm -rfv //能够看到删除过程
  • rm -rf //没有输入正确的文件名也不会报错

rm -rf后面不能加/,要是你加了并且还输入了,那么就可以跑路了,因为你把你的系统文件都删了

[root@localhost ~]# ls /tmp/test/123/
3
[root@localhost ~]# rm /tmp/test/123/  #不加的话就会报错
rm: 无法删除"/tmp/test/123/": 是一个目录
[root@localhost ~]# rm -r /tmp/test/123/
rm:是否进入目录"/tmp/test/123/"? y
rm:是否删除目录 "/tmp/test/123/3"?y
rm:是否删除目录 "/tmp/test/123/"?y
[root@localhost ~]# mkdir /tmp/test/123/
[root@localhost ~]# rm -f /tmp/test
rm: 无法删除"/tmp/test": 是一个目录
[root@localhost ~]# rm -rf /tmp/test/
[root@localhost ~]# ls /tmp/test/
ls: 无法访问/tmp/test/: 没有那个文件或目录
#删除时显示过程
[root@localhost ~]# mkdir -p /tmp/test/123/3 
[root@localhost ~]# rm -rfv /tmp/test/   
已删除目录:"/tmp/test/123/3"
已删除目录:"/tmp/test/123"
已删除目录:"/tmp/test/"

  • tree命令 //以树状结构显示文件或目录,后面要接目录或文件名
没有就先安一个
[root@localhost ~]# tree
bash: tree: 未找到命令...
[root@localhost ~]# yum install tree
[root@localhost ~]# tree /tmp/test/
/tmp/test/
└── 123
    └── 3

2 directories, 0 files

http://man.linuxde.net/tree (详解)

猜你喜欢

转载自my.oschina.net/u/3707523/blog/1824126
今日推荐