防止bash别名在shell start处评估语句

Mar*_*cny 29 bash alias

说我有以下别名.

alias pwd_alias='echo `pwd`'
Run Code Online (Sandbox Code Playgroud)

这个别名不是"动态的".它会pwd在shell启动时立即进行评估.反正是否有延迟评估滴答中的表达式直到别名的运行时?

jor*_*anm 34

你真正想要的是一个函数,而不是别名.

pwd_alias() {
   echo "$PWD"
}
Run Code Online (Sandbox Code Playgroud)

别名只是替换文本.任何复杂的东西都需要一个功能.

  • @dgilperez`~/.bashrc`很好. (2认同)
  • 这个函数语法对我不起作用。我不得不使用`function pwd_alias { echo "$PWD" }` (2认同)