当前位置 : 主页 > 网络推广 > seo >

使用fish检索当前源文件的路径

来源:互联网 收集:自由互联 发布时间:2021-06-16
在fish shell脚本中,是否可以获取 shell脚本所在的路径?在bash中,您可以使用BASH_SOURCE变量来执行此操作. 一种方法是使用 status命令. 例如. ~/tmp echo status -f show_filename.fish~/tmp fish show_filenam
在fish shell脚本中,是否可以获取 shell脚本所在的路径?在bash中,您可以使用BASH_SOURCE变量来执行此操作. 一种方法是使用 status命令.

例如.

~/tmp> echo status -f > show_filename.fish
~/tmp> fish show_filename.fish
/home/foo/tmp/show_filename.fish

啊,对不起 – 根据你的评论判断,我误解了这个问题.我认为你的意思是完全限定的路径,而不是脚本的目录.

您可以将状态结果发送到dirname.这不是鱼的内置功能,就像状态一样,但鱼往往会尽可能多地外包这种功能(参见“极简主义法则”,在鱼类design doc中).我在文档中看不到任何更好的命令,所以也许这就像我们现在可以得到的一样好?

修改示例,将show_filename.fish的内容更改为:

dirname (status -f)

现在你应该得到:

~/tmp> fish show_filename.fish
/home/foo/tmp
网友评论