gpt4 book ai didi

Bash:创建嵌套别名

转载 作者:行者123 更新时间:2023-12-04 00:08:22 26 4
gpt4 key购买 nike

我正在尝试如下创建别名,其中 app_folder 是顶级文件夹,appX 是可执行文件:

alias app_folder='/tmp/app'
alias app1='app_folder/app1'
alias app2='app_folder/app2'
alias app_output='cat app_folder/log.txt'

当我在终端中调用它时,我会得到如下信息:

bash: app_folder/app1: No such file or directory
cat: app_folder/log.txt: No such file or directory

我尝试了所有不同的方法,但没有一个有效:

app1="$(app_folder)"'/app1'
app1='`app_folder`/app1'

那么这是否可以使用别名,如果没有,还有其他方法吗?

最佳答案

我想你想要这样的东西:

APP_FOLDER="/tmp/app"
alias app1="$APP_FOLDER/app1"
alias app2="$APP_FOLDER/app2"
alias app_output="cat $APP_FOLDER/log.txt"

如果它定期更改,您可以在文件中使用它,例如,更改别名指向的文件夹:

APP_FOLDER="$1"
alias app1="$APP_FOLDER/app1"
alias app2="$APP_FOLDER/app2"
alias app_output="cat $APP_FOLDER/log.txt"

因此,如果这是在“aliastest”文件中,您可以这样做:

. aliastest /tmp/app

你会得到,例如:

$ alias | grep app
alias app1='/tmp/app/app1'
alias app2='/tmp/app/app2'
alias app_folder='/tmp/app'
alias app_output='cat /tmp/app/log.txt'

这就是你要找的吗?或者,您可以使用单引号在别名中包含变量,例如:

alias app1='$APP_FOLDER/app1'
alias app2='$APP_FOLDER/app2'
alias app_output='cat $APP_FOLDER/log.txt'

然后,每当您设置 APP_FOLDER 变量时,您的别名都会使用它。

关于Bash:创建嵌套别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25254567/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com