File bash脚本:如何存储源代码文件&x27;变量中的名称是什么?
我想要写代码的文件名 例如,如果脚本写在名为“name.sh”的文件中 然后我想要一个变量,例如 var=name.sh 其中var将保存文件名File bash脚本:如何存储源代码文件&x27;变量中的名称是什么?,file,bash,scripting,File,Bash,Scripting,我想要写代码的文件名 例如,如果脚本写在名为“name.sh”的文件中 然后我想要一个变量,例如 var=name.sh 其中var将保存文件名 但是假设我不知道文件名,我怎么做呢?您可以使用bash内置变量$0来实现这一点 #!/bin/bash echo This script file is named `basename $0` 如果要将其存储在另一个变量中,可以执行以下操作: #!/bin/bash THESCRIPT=$0 echo This script file is n
但是假设我不知道文件名,我怎么做呢?您可以使用bash内置变量
$0
来实现这一点
#!/bin/bash
echo This script file is named `basename $0`
如果要将其存储在另一个变量中,可以执行以下操作:
#!/bin/bash
THESCRIPT=$0
echo This script file is named $THESCRIPT
您可以使用basename
basename-从文件名中删除目录和后缀
var=$(basename$0)
看起来您需要包含当前脚本名称的
$0
或$\
。请参见此处:您可以使用$0
,它在某些其他编程语言中相当于argv[0]
#!/bin/bash
echo $0
echo $1
如果使用$sh file.sh one-two
运行上面的bash脚本,将获得以下输出
test.sh
one
two