繁体   English   中英

bash脚本:如何将源代码文件的名称存储在变量中?

[英]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.

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