xeb*_*che 6 bash scripting alias
$0
扩展为shell脚本的名称.
$ cat ./sample-script
#!/bin/bash
echo $0
$ chmod 700 ./sample-script
$ ./sample-script
./sample-script
Run Code Online (Sandbox Code Playgroud)
如果通过符号链接调用shell脚本,请$0
展开其名称:
$ ln -s ./sample-script symlinked-script
$ ./symlinked-script
./symlinked-script
Run Code Online (Sandbox Code Playgroud)
我怎么能得到别名的名字?这里`$ 0'再次扩展到文件名:
$ alias aliased-script=./sample-script
$ aliased-script
./sample-script
Run Code Online (Sandbox Code Playgroud)
我想您已经知道这一点,但根据记录,答案是:您需要通过实现别名的代码进行合作。
alternate_name () {
MY_ALIAS_WAS=alternate_name real_name "$@"
}
Run Code Online (Sandbox Code Playgroud)
或者,如果您确实想使用取代的别名语法:
alias alternate_name="MY_ALIAS_WAS=alternate_name real_name"
Run Code Online (Sandbox Code Playgroud)
...进而...
$ cat ~/bin/real_name
#!/bin/sh
echo $0, I was $MY_ALIAS_WAS, "$@"
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1512 次 |
最近记录: |