繁体   English   中英

如何在fish shell脚本中获取程序名称?

[英]How to get the program name in a fish shell script?

在bash中,如在ruby中,程序名称由$ 0给出。 什么是鱼? 如果必须,我可以做以下事情:

set PROGRAM (ps --no-header -o args -p %self | egrep -o '\S+')[2]

但我确定程序名称必须已在某处可用。 我也可以在每个程序的存根中将变量中的程序名设置,但是存在维护问题。

要获得与命令相同的结果,它是您要查找的脚本文件名。

此信息不存储在变量中,但您可以通过查询status获取此信息。

basename (status -f)      # The name of the file
status -f                 # The full path of the file

更多信息: http//fishhell.com/docs/2.0/commands.html#status

对于fish使用$_作为程序名称。

fish 3.x

status current-command

请参阅3.0文档的“ 弃用”部分

fish 2.x

使用$_作为程序名称。

请参阅2.0文档的可编程标题部分

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM