在使用别名之前检查是否使用了某个单词

在使用别名之前检查是否使用了某个单词

我正在考虑创建一个新的别名,但它看起来像是可以定义的东西(别名git statusstatus的,我就是那么懒。)

我尝试在终端(Ubuntu Precise)中运行状态,但作业名称未定义。在继续创建别名之前我还应该检查什么吗?有什么明确的做法还是我偏执了?

答案1

尝试运行该命令确实有效。有一些方法可以仅检查别名,但尝试运行它会更好,因为这也会找到函数、二进制文件和脚本。但是,如果程序存在并且在不带参数运行时执行了您不希望执行的操作,则这可能存在风险。

如果您只想检查别名,请使用alias

alias | grep status

更好的方法是:还可以找到任何类型的可执行文件以及别名type

$ type status
$ type status
bash: type: status: not found

答案2

alias命令将以状态 0 退出并输出指定别名的定义:

$ alias ls
alias ls='ls -G'
$ echo $?
0

如果未定义别名,则会将错误打印到标准错误并alias以状态 1 退出:

$ alias foo
bash: alias: foo: not found
$ echo $?
1 

答案3

该命令alias显示所有定义的别名。然后可以用来grep检查您要定义的新别名是否正在使用。

alias | grep 'your_new_alias_name'

相关内容