linux - 根据参数将 bash 中的命令替换为其他命令

标签 linux shell bash

有一个命令,它接受多个参数,但根据参数,我必须改变原始命令本身,如何通过 .bashrc 在 shell 中完成?

示例:

  • command -a -1 应该作为 command -a -1
  • command -a -2 应该作为 command -a -2
  • command -a -4 应该作为 command -a -4
  • 但是 command -a -3 应该运行 myscript.sh

对于格式错误的问题,论坛的新问题,我们深表歉意。

最佳答案

使用函数:

somename() {
    if [[ $1 = "-a" && $2 = "-3" ]]
    then myscript.sh
    else command somename "$@"
    fi
}

我使用 somename 作为您要替换的命令的名称,以避免与用于执行它而不通过函数的 command 内置命令混淆再次。

关于linux - 根据参数将 bash 中的命令替换为其他命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28023558/

相关文章:

bash - zsh 提示 adam2 - 没有换行符的脚本输出,未显示

linux - Linux 上的内存屏障和 atomic_t

linux - 每个数组元素存储一行 grep 输出

java - 如何正确地将共享库加载到 Eclipse 中

linux - shell中的cmd1 & cmd2 和 cmd1 && cmd2 有什么区别

bash - 在 Bash 中将日期时间字符串转换为纪元

linux - 如何使用 awk 中的文本来 cat 系统 ("pwd") 的输出?

c - MPI 中如何共享工作区?

bash - 尾随换行符和内置的 bash 'read'

Bash:别名中的嵌套反引号会导致问题