[英]bash scripting: how to store the source code file's name in a variable?
我想要编写代码的文件的名称
例如,如果脚本编写在名为“ name.sh”的文件中
那么我想有一个变量
var = name.sh
var将保存文件名的位置
但是假设我不知道文件名,该怎么办?
您可以使用基本名称。
basename-从文件名中删除目录和后缀
var = $(基本名称$ 0)
您可以为此使用bash内置变量$0
。
#!/bin/bash
echo This script file is named `basename $0`
如果要将其存储在另一个变量中,则可以执行以下操作:
#!/bin/bash
THESCRIPT=$0
echo This script file is named $THESCRIPT
看起来您想要$0
或$_
,其中包含当前脚本的名称。 参见此处: http : //tldp.org/LDP/Bash-Beginners-Guide/html/sect_03_02.html#sect_03_02_04
您可以使用$0
,在其他一些编程语言中,它等效于argv [0]。
#!/bin/bash
echo $0
echo $1
如果使用$ sh file.sh one two
运行上述bash脚本,则会得到以下输出。
test.sh
one
two
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.