rm是一个危险的命令。作用是删除目录或文件。
注意,删除目录需带参数-r
[rm 目录] 这样是删不掉的
示例
1.删除文件
[syq@localhost a]$ ll
total 0
drwxrwxr-x. 3 syq syq 15 Mar 24 09:31 b
drwxrwxr-x. 2 syq syq 6 Mar 24 09:35 ggg
-rwxr-xr-x. 1 syq syq 0 Mar 24 09:40 test.sh
drwxr-xr-x. 2 syq syq 6 Mar 24 09:33 ttt
[syq@localhost a]$ rm test.sh
[syq@localhost a]$ ll
total 0
drwxrwxr-x. 3 syq syq 15 Mar 24 09:31 b
drwxrwxr-x. 2 syq syq 6 Mar 24 09:35 ggg
drwxr-xr-x. 2 syq syq 6 Mar 24 09:33 ttt
2.交互式删除,即删除前进行确认,y确认删除,n不删除
interactive
[syq@localhost a]$ ll
total 0
-rw-rw-r--. 1 syq syq 0 Mar 24 09:43 1.log
-rw-rw-r--. 1 syq syq 0 Mar 24 09:43 2.log
-rw-rw-r--. 1 syq syq 0 Mar 24 09:43 3.log
drwxrwxr-x. 3 syq syq 15 Mar 24 09:31 b
drwxrwxr-x. 2 syq syq 6 Mar 24 09:35 ggg
drwxr-xr-x. 2 syq syq 6 Mar 24 09:33 ttt
[syq@localhost a]$ rm -i *.log
rm: remove regular empty file '1.log'? y
rm: remove regular empty file '2.log'? y
rm: remove regular empty file '3.log'? n
[syq@localhost a]$ ll
total 0
-rw-rw-r--. 1 syq syq 0 Mar 24 09:43 3.log
drwxrwxr-x. 3 syq syq 15 Mar 24 09:31 b
drwxrwxr-x. 2 syq syq 6 Mar 24 09:35 ggg
drwxr-xr-x. 2 syq syq 6 Mar 24 09:33 ttt
3.rm -f 删除时不确认
-f force 忽略 不给出提示
[syq@localhost a]$ ll
total 0
-rw-rw-r--. 1 syq syq 0 Mar 24 09:43 3.log
drwxrwxr-x. 3 syq syq 15 Mar 24 09:31 b
drwxrwxr-x. 2 syq syq 6 Mar 24 09:35 ggg
drwxr-xr-x. 2 syq syq 6 Mar 24 09:33 ttt
[syq@localhost a]$ rm -f 3.log
[syq@localhost a]$ ll
total 0
drwxrwxr-x. 3 syq syq 15 Mar 24 09:31 b
drwxrwxr-x. 2 syq syq 6 Mar 24 09:35 ggg
drwxr-xr-x. 2 syq syq 6 Mar 24 09:33 ttt
4.rm -r 将目录和子目录 递归删除
[syq@localhost a]$ mkdir -p b/c/d
[syq@localhost a]$ cd b/c/d/
[syq@localhost d]$ cd -
/home/syq/a
[syq@localhost a]$ rm -r b
[syq@localhost a]$ ls
ggg ttt
5.rm -rf 将字目录及其下的文件全部删除,且不需要确认
syq@localhost a]$ mkdir -p b/c/d
[syq@localhost a]$ cd b
[syq@localhost b]$ touch 1.log 2.log 3.log
[syq@localhost b]$ ll
total 0
-rw-rw-r--. 1 syq syq 0 Mar 24 09:52 1.log
-rw-rw-r--. 1 syq syq 0 Mar 24 09:52 2.log
-rw-rw-r--. 1 syq syq 0 Mar 24 09:52 3.log
drwxrwxr-x. 3 syq syq 15 Mar 24 09:52 c
[syq@localhost b]$ cd ..
[syq@localhost a]$ ll
total 0
drwxrwxr-x. 3 syq syq 54 Mar 24 09:52 b
drwxrwxr-x. 2 syq syq 6 Mar 24 09:35 ggg
drwxr-xr-x. 2 syq syq 6 Mar 24 09:33 ttt
[syq@localhost a]$ rm -rf b
[syq@localhost a]$ ll
total 0
drwxrwxr-x. 2 syq syq 6 Mar 24 09:35 ggg
drwxr-xr-x. 2 syq syq 6 Mar 24 09:33 ttt