使用/bin/rm abc.txt
与有时必须使用alias rm
的时间之间有什么区别,然后使用rm abc.txt
执行
答案 0 :(得分:4)
/bin/rm
将始终引用系统上的二进制rm
命令。如果你只是写rm abc.txt
,其中一个可能会发生:
您的shell直接将rm
实现为内置函数,或者有一个名为rm
的shell函数(不运行外部命令)。
rm
先前已被别名(alias rm=<substituted-command>
),表示不同的内容。通常,别名命令在功能上类似,但不一定是。
如果以上都不适用,shell会在/bin
中查找外部命令并运行它。
您可以使用alias
查看所有已定义的别名。另请查看command -V
shell builtin,它可以告诉您给定命令是外部命令,shell函数,内置函数还是特殊内置函数。
答案 1 :(得分:1)
为rm
创建别名的典型原因是添加-i
或-I
选项。在“交互式”模式下,rm
会在删除任何内容之前要求确认。
$ alias rm="/bin/rm -i"
$ rm myfile
rm: remove regular file ‘myfile’? _