我正在开发一个用于时间跟踪的简单 cli 应用程序。这个想法是让 fish-aliases 源 r-scripts 在时间表中创建时间戳。像这样:
alias checkin='rscript (echo $PWD/checkin.R)'
但是,如果我站在正确的目录中,这样写只允许我调用别名。有没有办法对当前路径进行硬编码,以便我可以从任何目录调用它?
我正在开发一个用于时间跟踪的简单 cli 应用程序。这个想法是让 fish-aliases 源 r-scripts 在时间表中创建时间戳。像这样:
alias checkin='rscript (echo $PWD/checkin.R)'
但是,如果我站在正确的目录中,这样写只允许我调用别名。有没有办法对当前路径进行硬编码,以便我可以从任何目录调用它?
单引号是问题所在。它们防止变量扩展。
如果要在定义别名时使用 PWD,请使用双引号:
(= 是可选的)
看看它是如何定义的:
type checkin
然后
funcsave checkin
使用正确的路径永久保存函数(别名创建的函数)。