linux rm

简介: rm -rf xx自定义回收站命令:myrm(){ D=/tmp/D; mv "D && echo "moved to $D ok"; }说明:myrm(){D=/tmp/$(date +%Y%m%d%H%M%S);在/tmp文件夹中创建名为“当前日期”的文件;其中“date+%Y%m%d%H%M%S”是规定了日期的输出格式;mkdir -p $D;以变量D中的路径创建文件夹。

rm -rf xx

自定义回收站
命令:

myrm(){ D=/tmp/(date +%Y%m%d%H%M%S); mkdir -pD; mv "@"D && echo "moved to $D ok"; }
说明:

myrm()
{
D=/tmp/$(date +%Y%m%d%H%M%S);

在/tmp文件夹中创建名为“当前日期”的文件;

其中“date+%Y%m%d%H%M%S”是规定了日期的输出格式;

mkdir -p $D;

以变量D中的路径创建文件夹。

mv "@"D && echo "moved to $D ok";

将所要删除的文件移入变量D中的文件夹内,移入成功后,输出移动成功。

}

alias rm='myrm'

命令别名定义方式,此定义成功后,无论输入rm或myrm系统都会做出相同操作。

输出:

hc@hc-virtual-machine:/tmpmyrm(){ D=/tmp/(date +%Y%m%d%H%M%S); mkdir -p D; mv "@" D && echo "moved toD ok"; }

hc@hc-virtual-machine:/tmp$ alias rm='myrm'

hc@hc-virtual-machine:/tmp$ touch {1..4}.log

hc@hc-virtual-machine:/tmpls 1.log 2.log 3.log 4.log hc@hc-virtual-machine:/tmp rm [1234].log
moved to /tmp/20181026111028 ok
hc@hc-virtual-machine:/tmpls 20181026111028 hc@hc-virtual-machine:/tmp cd 20181026111028/
hc@hc-virtual-machine:/tmp/20181026111028$ ls
1.log 2.log 3.log 4.log
说明:

上面的操作过程模拟了回收站的效果,即删除文件的时候只是把文件放到一个临时目录中,这样在需要的时候还可以恢复过来。

由于我们当前已将rm绑定为myrm,所以我们无法执行删除操作

临时设置rm命令别名为myrm

alias rm='myrm'
此时若想删除回收站里的文件,
由于是临时的,所以换一个命令行窗口后,绑定就会失效
即换一个命令行窗口执行rm -r 命令删除即可

如果不想换命令行窗口,可以用sudo rm -rf 目录名 删除回收站的文件

或者解除临时绑定

unalias rm
输出:

hc@hc-virtual-machine:/tmp/20181026111444alias alias alert='notify-send --urgency=low -i "([ ? = 0 ] && echo terminal || echo error)" "(history|tail -n1|sed -e '''s/^\s[0-9]+\s//;s/[;&|]\salert//'\'')"' alias egrep='egrep --color=auto' alias fgrep='fgrep --color=auto' alias grep='grep --color=auto' alias l='ls -CF' alias la='ls -A' alias ll='ls -alF' alias ls='ls --color=auto' alias rm='myrm' hc@hc-virtual-machine:/tmp/20181026111444 unalias rm
hc@hc-virtual-machine:/tmp/20181026111444alias alias alert='notify-send --urgency=low -i "([ ? = 0 ] && echo terminal || echo error)" "(history|tail -n1|sed -e '''s/^\s
[0-9]+\s//;s/[;&|]\salert$//''')"'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l='ls -CF'
alias la='ls -A'
alias ll='ls -alF'
alias ls='ls --color=auto'

目录
相关文章
|
1月前
|
Shell Linux C语言
【Shell 命令集合 文件管理】Linux 删除 rm命令使用指南
【Shell 命令集合 文件管理】Linux 删除 rm命令使用指南
39 0
|
3月前
|
安全 Linux
Linux命令之rm
Linux命令之rm
36 4
|
4月前
|
Linux
linux(十三)文件和目录相关命令rm
linux(十三)文件和目录相关命令rm
36 0
|
5月前
|
Linux
Linux rm命令:删除文件或目录
当 Linux 系统使用很长时间之后,可能会有一些已经没用的文件(即垃圾),这些文件不但会消耗宝贵的硬盘资源,还是降低系统的运行效率,因此需要及时地清理。 rm 是强大的删除命令,它可以永久性地删除文件系统中指定的文件或目录。在使用 rm 命令删除文件或目录时,系统不会产生任何提示信息。此命令的基本格式为: [root@localhost ~]# rm[选项] 文件或目录 -f:强制删除(force),和 -i 选项相反,使用 -f,系统将不再询问,而是直接删除目标文件或目录。 -i:和 -f 正好相反,在删除文件或目录之前,系统会给出提示信息,使用 -i 可以有效防止不小心删除有用的
134 1
|
13天前
|
Linux
Linux简单指令|cd|touch|mkdir|rmdir|rm
Linux简单指令|cd|touch|mkdir|rmdir|rm
|
4月前
|
Linux
Linux命令(92)之rm
Linux命令(92)之rm
32 0
|
5月前
|
Linux 数据安全/隐私保护 Windows
初学[Linux]基础命令“touch, cat, more, cp, rm, vm“
初学[Linux]基础命令“touch, cat, more, cp, rm, vm“
52 1
|
7月前
|
Linux Shell
Linux 处理文件( touch 命令、cp 命令、mv 命令、rm 命令)
创建文件( touch 命令),复制文件( cp 命令),重命名文件( mv 命令),删除文件(rm 命令)
Linux 处理文件( touch 命令、cp 命令、mv 命令、rm 命令)
|
7月前
|
弹性计算 Linux 数据库
在ECS Linux系统上误操作了`rm -rf /*`命令
在ECS Linux系统上误操作了`rm -rf /*`命令
146 4
|
7月前
|
弹性计算 Linux
在ECS Linux系统上误操作了`rm -rf /*`命令
在ECS Linux系统上误操作了`rm -rf /*`命令
254 3