You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为rm命令设置别名,避免解析独立星号参数

配置rm命令阻止含独立星号的执行

最简方法是通过shell别名覆盖rm命令,添加参数检查逻辑:

  • 打开你的shell配置文件(bash环境用~/.bashrc,zsh环境用~/.zshrc),添加以下内容:
alias rm='_safe_rm() {
    for arg in "$@"; do
        if [ "$arg" = "*" ]; then
            echo "错误:禁止使用独立星号参数" >&2
            return 1
        fi
    done
    command rm "$@"
}; _safe_rm'
  • 保存文件后,执行source ~/.bashrc(bash环境)或source ~/.zshrc(zsh环境),或者重启终端使配置生效。

这个别名的逻辑很直接:遍历所有传入的参数,一旦发现单独的*就输出错误并终止,否则调用真正的rm命令(用command rm避免触发别名递归)。

测试场景:

  • 输入rm -f * .txt时,会直接报错,不会执行删除操作
  • 输入rm *.txt时,shell会先将*.txt展开为匹配的文件名,不会作为单独的*传入函数,因此可以正常执行

内容的提问来源于stack exchange,提问作者user5759106

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 09:42:40