删除文件(rm,rmdir)
适用于 ubuntu 20.04
ubuntu 20.04 是 “西柚云” 主要使用的操作系统 西柚云官网
rmdir 删除一个空目录
# 在 /tmp 目录下创建一个名为 xiyouyun 的目录 cd /tmp mkdir xiyouyun # 将工作目录切换为 xiyouyun cd xiyouyun # 在 xiyouyun 目录下创建一个名为 to_delete 的目录 mkdir to_delete # 查看当前工作目录下的文件信息,确认 to_delete 目录是否被创建 ls # 删除 to_delete 目录 rmdir to_delete # 查看当前目录下的文件信息,确认 to_delete 目录是否被删除 ls # 在当前工作目录下生成一个 xiyou.txt 的文件 echo "hello, xiyouyun" > xiyou.txt ls # 此时 xiyouyun 目录下存在一个名为 xiyou.txt 的文件,不能被删除 rmdir /tmp/xiyouyun
rm 删除文件或目录,支持正则表达式匹配待删除的文件或目录,这里关于正则表达式的知识点只需要记住
*
在匹配文件路径时可以代表任意字符就行。# 在 /tmp 目录下创建一个名为 xiyouyun 的目录 cd /tmp mkdir xiyouyun # 将工作目录切换为xiyouyun cd xiyouyun # 在 /tmp/xiyouyun 目录下创建 9 个文件,分别为 1.txt、2.txt …… 9.txt,可以暂时忽略这里的语法 touch {1..9}.txt ls # 删除文件 1.txt rm 1.txt # 删除文件 9.txt, * 可以表示后面的 .txt, * 在表示路径时可以表示任意字符,因此这里的 9* 可以被解释为 9.txt rm 9* # 创建两个目录 father/son 此时在 father 目录下会创建一个名为 son 的子目录,因此创建后 father 目录不是空目录 mkdir -p father/son # 查看目录层级结构,如果系统中不存在这个命令,可以借助 ls 查看当前工作目录下的文件,或者通过 apt install tree 安装这个软件。 tree # 删除 father 目录,以及 father 目录下面的所有文件 # 失败,rmdir 只能删除空目录 rmdir father # rm 命令默认删除文件,使用 -r 参数可以删除目录,-i 参数会在删除目录前一一询问用户是否删除该的文件,输入 yes 并回车就会将对应的文件删除 rm -r -i father ls # rm 的 -f 参数表示在删除文件时不用输入 yes 确认,强制删除。 mkdir -p father/son # 这里的 -r 和 -f 可以连在一起写作 -rf,效果同分开写相同,下面这条命令会删除 father 目录和 father 目录下的所有文件 rm -rf father ls
补充内容
mkdir
能够创建目录,touch
能够创建文件,那么怎么区分文件或目录呢?
使用
ls
输出当前工作目录下的文件信息时,会通过不同的颜色来区分目录和文件,但这种方式不一定总是可靠。因为光凭颜色只能看出有一种颜色表示目录,另一种颜色表示文件,不能看出哪一种颜色对应目录,哪一种颜色对应文件。在 windows 中可以通过文件后缀(如:1.txt)来区分文件和目录,文件有后缀,目录没后缀,这在 linux 系统中也不可行。
这里介绍一种方法:使用
ls -l
以 list(列表)的形式列出当前工作目录下的所有文件信息,每个文件或目录对应一行,看每一行的第 1 个字符就可以判断对应的文件信息是目录还是文件了。第 1 个字符为d
的行表示该行对应的文件类型为目录,第 1 个字符为-
的行表示该行对应的文件类型为文件。# 创建 xiyouyun 目录,如果 /tmp/xiyoyun 目录存在,不做操作 mkdir -p /tmp/xiyouyun cd /tmp/xiyouyun # 创建 1 个目录 mkdir directory # 创建一个名为 file 的文件,文件名不带后缀 touch file ls -l
本文含有隐藏内容,请 开通VIP 后查看