我想在我当前所在的文件夹中为一个创建新tmux会话的命令添加别名,并将文件夹名称(连字符)设置为会话名称。如果会话已经存在,则tmux会附加到它:
alias tses="tmux new -As $(basename $PWD | tr . -)"
当我在shell中运行命令时:tmux new -As $(basename $PWD | tr . -)
它按预期工作。但是当我运行别名tses
时,它总是将我的主文件夹的名称设置为会话名称。
为什么会这样,我该如何解决它按预期工作?
答案 0 :(得分:0)
显然,双引号会导致zsh在加载$PWD
时评估命令(因此.zshrc
)。把它放在单引号中:
alias tses='tmux new -As $(basename $PWD | tr . -)'
解决了它。另见:Get the `pwd` in an `alias`?。