为了避免在使用rm命令时误删除文件,可以将rm命令别名设置为一个安全的替代命令,如trash或者move-to-trash。同时,在对于rm命令的别名中处理星号时需进行特殊处理,避免出现评估星号导致删除多个文件的情况。
示例代码如下:
alias rm='count="$(echo "$@" |grep "\*"); if [ -n "$count" ]; then echo "Do not use * with rm."; else mv --target-directory=$HOME/.Trash $*; fi'
其中,该别名会先检查是否有星号存在,如果存在星号则不执行删除操作并输出警告信息,否则将文件移动到回收站中。