Linux之rm命令
作者:互联网
> `rm`是很常用的命令,该命令的功能是删除目录中的一个或者多个文件或者目录。对于链接文件,只是删除了链接文件,不会删除原文件。
> `rm`是一个很危险的命令,新生一定不能在`/`根目录执行`rm -rf *`,或者执行`rm -rf /`,这将导致系统所有文件被删除,导致系统崩溃。所以在删除时一定要确认清楚。
### 命令格式
`rm [选项] 文件...`
### 命令功能
> 删除一个目录中的一个或多个文件或目录,如果没有使用- r选项,则rm不会删除目录。如果使用 rm 来删除文件,通常仍可以将该文件恢复原状。
### 命令参数
```
- -f,--force 不提醒直接删除
- -i,--interactive 交互式删除
- -r,-R --recursive 递归删除子目录
- -v,--verbose 详细显示进行的步骤
- --help 帮助信息
- --version 输出版本信息
```
### `rm rumenz.txt`删除文件,系统会询问
> 如果确认要删除则输入(y/Y),不需要删除则直接回车或者输入非(y/Y)的字符文字。
```
>ls
rumenz.txt
> rm rumenz.txt
> rm: remove regular empty file ‘rumenz.txt’? y
```
### 强行删除文件,系统无提示
> 直接删除,没有返回的机会
```
>ls
rumenz.txt
> rm -r rumenz.txt
```
### 删除当前目录下所有txt文件,删除前逐一询问
```
>ls
1.txt 2.txt 3.txt 4.txt 5.txt 6.log
> rm -i *.txt
rm -i *.txt
remove 1.txt? y
remove 2.txt? y
remove 3.txt? y
remove 4.txt? y
remove 5.txt? y
>ls
6.log
```
### 删除目录下子目录所有的文件
```
> tree rumenz/
rumenz/
├── 1.txt
├── one
│ └── 2.txt
└── tow
> rm -r rumenz
```
### 直接删除文件(文件或者目录),没有提示
> 删除`rumenz`下的所有目录和文件
```
> rm -rf rumenz
```
### 直接删除`rumenz`目录下的所有文件和目录,保留`rumenz`目录
```
> rm -rf rumenz/*
```
### 删除以`-`开头的文件
```
> touch -- -rumenz
> ls
-rumenz
> rm -- -rumenz
```
### 自定义回收站
```
# 定义一个函数
> rrm(){ D=/tmp/$(date +%Y%m%d%H%M%S); mkdir -p $D; mv "$@" $D && echo "moved to $D ok";}
> alias rm="rrm"
> rm node_exporter-1.0.1.linux-amd64.tar.gz
moved to /tmp/20210130221519 ok
> cd /tmp/20210130221519
> ls
node_exporter-1.0.1.linux-amd64.tar.gz
```
> 删除文件的时候只是把文件放到一个临时目录中,这样在需要的时候还可以恢复过来。
原文链接:https://rumenz.com/rumenbiji/linux-rm.html
微信公众号:入门小站
标签:文件,rumenz,删除,命令,Linux,rm,txt,### 来源: https://blog.51cto.com/u_12214037/2950069