有没有办法替换别名,以便将其附加到或预先添加到 shell 中的现有命令?
例如,定义别名:
alias execloc='/home/user/'
Run Code Online (Sandbox Code Playgroud)
将此添加到 bash 终端中的命令中:
cd exeloc/temp/somefolder
Run Code Online (Sandbox Code Playgroud)
可以做这样的事情,还是有办法做到这一点?
你不能这样做,因为这/home/user/不是命令。它更像是静态字符串。
来自man bash(第 1984 行某处):
当单词用作简单命令的第一个单词时,别名允许用字符串替换该单词 。
就您而言,execloc永远不会是简单命令的第一个单词。
但是,execloc您可以将其定义为环境变量,而不是定义为别名:
export execloc='/home/user/'
Run Code Online (Sandbox Code Playgroud)
然后你可以在任何你想要的地方使用它,如下所示:
cd $exeloc/temp/somefolderRun Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7590 次 |
| 最近记录: |