Linux 如果一个参数匹配,如何使用shell脚本停止CLI
基本上,我正试图禁用CLI的“删除”功能,以防止我自己(和其他人)无意中删除我们的环境。我想基本上截取Linux 如果一个参数匹配,如何使用shell脚本停止CLI,linux,bash,shell,Linux,Bash,Shell,基本上,我正试图禁用CLI的“删除”功能,以防止我自己(和其他人)无意中删除我们的环境。我想基本上截取放大delete(包括后续参数)并回应类似的内容,您不应该这样做。 amplify() { local -a args=( ) for arg; do # if arg == delete echo "This command is disabled." done } 问题是我仍然希望其余的CLI参数正常工作。因此,如果我输入放大状态,应该会运行。只是
放大delete
(包括后续参数)并回应类似的内容,您不应该这样做。
amplify() {
local -a args=( )
for arg; do
# if arg == delete
echo "This command is disabled."
done
}
问题是我仍然希望其余的CLI参数正常工作。因此,如果我输入
放大状态
,应该会运行。只是不要像以前那样在放大删除
或放大删除--arg2--arg3--etc
您可以在放大()
函数上编写一个包装器,并检查参数是否设置为删除
amplify() {
[ "$1" = "delete" ] && { >&2 printf '%s\n' "This command is disabled."; return; }
command amplify "$@"
}
放大之前的命令确保这次在路径
变量中搜索二进制文件以执行。放大(){if echo“$@”grep-qw delete;然后echo“this command is disabled”;返回1;fi}
未测试,但如果将其保存在中,则应能工作。.bashrc