shell如何在脚本中获取脚本名称

shell如何在脚本中获取脚本名称

作者:William Gu发布时间:2026-03-03阅读时长:0 分钟阅读次数:3

用户关注问题

Q
怎样在Shell脚本中获取当前脚本的名称?

我想在Shell脚本运行时,动态获得脚本本身的名称,该如何实现?

A

使用特殊变量获取脚本名称

可以通过使用特殊变量'$0'来获取当前Shell脚本的名称。这个变量包含了执行脚本时输入的命令或路径,因此在脚本中使用'echo "$0"'即可显示脚本名称。

Q
如何在Shell脚本中获取脚本的基本名称,不包含路径?

我需要只得到脚本文件的名称,不包括路径信息,请问怎样操作?

A

使用basename命令提取脚本名

结合'$0'和basename命令,可以只获取脚本的文件名。比如执行'basename "$0"',就能得到当前脚本的基本名称,去掉了路径部分。

Q
在Shell脚本中如何取得脚本名称的扩展名?

想要通过脚本自动获取脚本文件的扩展名,这样方便后续处理,该怎么做?

A

使用参数替换获取扩展名

可以利用Shell的字符串处理功能,例如使用'${0##*.}'语法来提取脚本名称的扩展名。此方式会从脚本名称中截取最后一个点(.)后的字符串作为扩展名。