linux下如何删除目录

author author     2023-04-15     360

关键词:

linux中删除文件和目录的命令: rm命令。

rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。
rm是一个危险的命令,使用的时候要特别当心,尤其对于新手,否则整个系统就会毁在这个命令(比如在/(根目录)下执行rm * -rf)。所以,我们在执行rm之前最好先确认一下在哪个目录,到底要删除什么东西,操作时保持高度清醒的头脑。
1.命令格式:
rm [选项] 文件…
2.命令功能:
删除一个目录中的一个或多个文件或目录,如果没有使用- r选项,则rm不会删除目录。如果使用 rm 来删除文件,通常仍可以将该文件恢复原状。
3.命令参数:
-f, --force 忽略不存在的文件,从不给出提示。
-i, --interactive 进行交互式删除
-r, -R, --recursive 指示rm将参数中列出的全部目录和子目录均递归地删除。
-v, --verbose 详细显示进行的步骤
--help 显示此帮助信息并退出
--version 输出版本信息并退出
4.命令实例:
实例一:删除文件file,系统会先询问是否删除。
命令:
rm 文件名
输出:
[root@localhost test1]# ll
总计 4
-rw-r--r-- 1 root root 56 10-26 14:31 log.log
root@localhost test1]# rm log.log
rm:是否删除 一般文件 “log.log”? y
root@localhost test1]# ll
总计 0[root@localhost test1]#
说明:
输入rm log.log命令后,系统会询问是否删除,输入y后就会删除文件,不想删除则数据n。
实例二:强行删除file,系统不再提示。
命令:
rm -f log1.log
输出:
[root@localhost test1]# ll
总计 4
-rw-r--r-- 1 root root 23 10-26 14:40 log1.log
[root@localhost test1]# rm -f log1.log
[root@localhost test1]# ll
总计 0[root@localhost test1]#

实例三:删除任何.log文件;删除前逐一询问确认
命令:
rm -i *.log
输出:
[root@localhost test1]# ll
总计 8
-rw-r--r-- 1 root root 11 10-26 14:45 log1.log
-rw-r--r-- 1 root root 24 10-26 14:45 log2.log
[root@localhost test1]# rm -i *.log
rm:是否删除 一般文件 “log1.log”? y
rm:是否删除 一般文件 “log2.log”? y
[root@localhost test1]# ll
总计 0[root@localhost test1]#

实例四:将 test1子目录及子目录中所有档案删除
命令:
rm -r test1
输出:
[root@localhost test]# ll
总计 24drwxr-xr-x 7 root root 4096 10-25 18:07 scf
drwxr-xr-x 2 root root 4096 10-26 14:51 test1
drwxr-xr-x 3 root root 4096 10-25 17:44 test2
drwxrwxrwx 2 root root 4096 10-25 17:46 test3
drwxr-xr-x 2 root root 4096 10-25 17:56 test4
drwxr-xr-x 3 root root 4096 10-25 17:56 test5
[root@localhost test]# rm -r test1
rm:是否进入目录 “test1”? y
rm:是否删除 一般文件 “test1/log3.log”? y
rm:是否删除 目录 “test1”? y
[root@localhost test]# ll
总计 20drwxr-xr-x 7 root root 4096 10-25 18:07 scf
drwxr-xr-x 3 root root 4096 10-25 17:44 test2
drwxrwxrwx 2 root root 4096 10-25 17:46 test3
drwxr-xr-x 2 root root 4096 10-25 17:56 test4
drwxr-xr-x 3 root root 4096 10-25 17:56 test5
[root@localhost test]#

实例五:rm -rf test2命令会将 test2 子目录及子目录中所有档案删除,并且不用一一确认
命令:
rm -rf test2
输出:
[root@localhost test]# rm -rf test2
[root@localhost test]# ll
总计 16drwxr-xr-x 7 root root 4096 10-25 18:07 scf
drwxrwxrwx 2 root root 4096 10-25 17:46 test3
drwxr-xr-x 2 root root 4096 10-25 17:56 test4
drwxr-xr-x 3 root root 4096 10-25 17:56 test5
[root@localhost test]#

实例六:删除以 -f 开头的文件
命令:
rm -- -f
输出:
[root@localhost test]# touch -- -f
[root@localhost test]# ls -- -f
-f[root@localhost test]# rm -- -f
rm:是否删除 一般空文件 “-f”? y
[root@localhost test]# ls -- -f
ls: -f: 没有那个文件或目录
[root@localhost test]#
也可以使用下面的操作步骤:
[root@localhost test]# touch ./-f
[root@localhost test]# ls ./-f
./-f[root@localhost test]# rm ./-f
rm:是否删除 一般空文件 “./-f”? y
[root@localhost test]#

实例七:自定义回收站功能
命令:
myrm() D=/tmp/$(date +%Y%m%d%H%M%S); mkdir -p $D; mv "$@" $D && echo "moved to $D ok";

输出:
[root@localhost test]# myrm() D=/tmp/$(date +%Y%m%d%H%M%S); mkdir -p $D; mv "$@" $D && echo "moved to $D ok";
[root@localhost test]# alias rm='myrm'
[root@localhost test]# touch 1.log 2.log 3.log
[root@localhost test]# ll
总计 16
-rw-r--r-- 1 root root 0 10-26 15:08 1.log
-rw-r--r-- 1 root root 0 10-26 15:08 2.log
-rw-r--r-- 1 root root 0 10-26 15:08 3.log
drwxr-xr-x 7 root root 4096 10-25 18:07 scf
drwxrwxrwx 2 root root 4096 10-25 17:46 test3
drwxr-xr-x 2 root root 4096 10-25 17:56 test4
drwxr-xr-x 3 root root 4096 10-25 17:56 test5
[root@localhost test]# rm [123].log
moved to /tmp/20121026150901 ok
[root@localhost test]# ll
总计 16drwxr-xr-x 7 root root 4096 10-25 18:07 scf
drwxrwxrwx 2 root root 4096 10-25 17:46 test3
drwxr-xr-x 2 root root 4096 10-25 17:56 test4
drwxr-xr-x 3 root root 4096 10-25 17:56 test5
[root@localhost test]# ls /tmp/20121026150901/
1.log 2.log 3.log
[root@localhost test]#
参考技术A rm命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。删除文件夹实例:rm -rf /var/log/httpd/access。更多Linux知识可参考书籍《Linux就该这么学》。 参考技术B 直接rm就可以了,不过要加两个参数-rf 即:rm -rf 目录名字
-r 就是向下递归,不管有多少级目录,一并删除
-f 就是直接强行删除,不作任何提示的意思
删除文件夹实例:rm -rf /var/log/httpd/access
将会删除/var/log/httpd/access目录以及其下所有文件、文件夹
需要提醒的是:使用这个rm -rf的时候一定要格外小心,linux没有回收站的,一旦删除不可恢复.
当然,rm还有更多的其他参数和用法,man rm就可以查看了本回答被提问者和网友采纳
参考技术C rm -fr /documentname 参考技术D

1.删除目录 rmdir

rmdir 是一个用于删除空目录的命令行实用程序。只有当目录为空时才需要删除目录,而不需要检查目录是否为空。

2.删除目录 rm

rm 是一个用于删除文件和目录的命令行实用程序。与命令不同 rmdir, rm 可以删除空目录和非空目录。

3.删除目录 find

find 是一个命令行实用程序,允许您根据给定的表达式搜索文件和目录,并对每个匹配的文件或目录执行操作。最常见的情况是使用 find 命令根据模式删除目录。几个Linux命令就可以解决了,详情请看下图:

linux下如何删除目录

linux中删除文件和目录的命令:rm命令。rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变... 查看详情

linux下如何删除文件夹

linux删除文件夹的方法有两种:rmdir命令和rm命令。很多人习惯用rmdir,不过一旦目录非空,就陷入深深的苦恼之中,此时就需要使用rm命令了。下面我们就来了解一下这两个命令。1、Linuxrmdir命令:删除空目录(空的文件夹)mdir(remov... 查看详情

linux下如何删除整个文件夹?

参考技术A步骤如下:1、执行删除操作之前一般会运用ls查看一下当前文件夹的内容,当然也可以运用tree命令将文件夹内容进行tree视图方式展示,如下图所示2、然后我们执行rmdir命令进行文件夹删除,后面加上要删除的文件夹名... 查看详情

linux下如何删除一个文件?

linux系统下删除文件可以用rm命令来操作即可。rm命令可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉。具体操作步骤如下:先进入linux系统终端(这里是centos系统),如... 查看详情

linux如何删除文件夹下面的文件和文件夹,只保留两个文件

# 删除目录下那两个文件之外的所有文件find dir/ -type f ! -name file1 -a ! -name file2 | xargs rm -f # 删除所有空目录(非空目录不会被删除,但是会出错误信息,可以忽略 查看详情

linux系统里面如何删除所有文件?

linux怎样删除当前目录下所有文件1.打开linux系统,在linux的桌面的空白处右击。2.在弹出的下拉选项里,点击打开终端即可进入命令行。3.在终端窗口中输入cd命令,再点击左边档案。4.把要删除文件的文件夹拖到cd后,回车进入此目录... 查看详情

linux删除指定目录下的指定文件(代码片段)

Linux删除指定目录下的指定文件删除lib目录下的所有与rabbitmq相关的文件和目录find/usr/lib/-name"rabbitmq"|xargsrm-rf删除根目录下的所有与rabbitmq相关的文件和目录find/-name"rabbitmq"|xargsrm-rf 查看详情

红帽linux如何完全删除应用软件,我将软件所在整个目录都删除了,但是重新安装软件提示我改软件已经安装

RedHat使用RPM软件包管理器,安装软件是用rpm-i命令,卸载软件是rpm-e。包括RedHat在内的大部分Linux发行版并没有“软件所在整个目录”这个东西,而是根据Linux下的FHS约定,将软件的配置文件放到/etc目录下,可执行程序放在各个bin... 查看详情

linux下删除某个目录下大量文件办法

...概有200万,并且不能及时回收。使用rm-fr/data/tmp/sess_*不能删除,rm命令会提示参数太多。后,使用rsync同步删除命令实现,完美实现了批量删除大量垃圾文件操作。具体步骤如下:大量文件存在的目录:/data/tmp使用命令: 查看详情

linux下查找某个目录下的具体目录,删除过期文件(代码片段)

删除当前目录下的所有超过90天的log文件1#!/bin/sh23echo"beforeremovelog"4du--max-depth=1-h5echo"------------------------------------------------------------------------------------------------"6#del 查看详情

如何在linux系统下建立组名sysadm操作命令

常用指令ls  显示文件或目录-l列出文件详细信息l(list)-a列出当前目录下所有文件及目录,包括隐藏的a(all)mkdir创建目录-p创建目录,若无父目录,则创建p(parent)cd切换目录touch创建空文件echo创建带有内容的文件。cat查看文件内... 查看详情

linux下如何彻底删除mysql

1、查找以前是否装有mysql命令:rpm-qa|grep-imysql可以看到如下图的所示:说明之前安装了:MySQL-client-5.5.25a-1.rhel5MySQL-server-5.5.25a-1.rhel52、停止mysql服务、删除之前安装的mysql删除命令:rpm-e–nodeps包名#rpm-evMySQL-client-5.5.25a-1.rhel5#rpm-ev... 查看详情

linux下删除某一目录下所有非文件夹的文件命令

想删除某一目录下所有排除掉文件夹的文件,不想一个个的删除,有没有什么linux命令一步就可以达到目的的?$ ls --file-type | grep -v "/$" | xargs rm -f该命令删除当前目录下除了文件夹以... 查看详情

请问linux怎样删除某一个目录下所有指定文件名的文件

...kevin/test,在test目录下有目录a,b,a,b下都有文件cc.txt,我想删除test目录下所有以cc.txt为名称的文件,有没有这样的命令能做到1、先使用SSH连接工具进入到linux系统中。2、在linux系统中使用删除的命令是rm,是英文remove的缩写,使用... 查看详情

(转)linux如何将新硬盘挂载到home目录下

参考技术A举例说明:新增磁盘的设备文件名为/dev/vdb大小为100GB。1、对新增磁盘进行分区按提示操作p打印n新增d删除w操作生效q退出操作后w这里我们新增一个分区/dev/vdb1大小为40GB2、分区格式化3、将新硬盘临时挂载在一个目录下... 查看详情

提取并删除目录中的所有.gz - Linux

...04:12【问题描述】:我有一个目录。它有大约500K.gz文件。如何提取该目录中的所有.gz并删除.gz文件?【问题讨论】:.gz文件不一定是存档。在这种情况下,您在执行gzip-dfile.gz时不会删除任何内容。我投票结束这个问题,因为它... 查看详情

linux系统下/tmp目录下的临时文件怎么清理?

/tmp里的文件是如何产生的?清理后有什么影响?谢谢!/tmp下的文件在每次关机后都会被清理干净,若想手动清理,清理的时候不推荐使用rm-rf命令,这样有时会引起程序的僵死。推荐使用tmpwatch命令来进行清理。附tmpwatch功能及... 查看详情

linux上如何快速删除一个目录

在linux中删除一个目录很简单,很多人还是习惯用rmdir,不过一旦目录非空,就陷入深深的苦恼之中,现在使用rm-rf命令即可解决。直接rm就可以了,不过要加两个参数-rf即:rm-rf  目录名字-r就是向下递归,不管有多少级目... 查看详情