Bash 在脚本中展开shell变量

Bash 在脚本中展开shell变量,bash,shell,variables,syntax,Bash,Shell,Variables,Syntax,如果我在我的环境中定义存档文件夹并将其导出,那么如何在shell脚本中访问它并运行程序 ARCHIVE=/home/kschmidt/public_html/CS265/Assignments/DrMath/Archive export ARCHIVE ./prob1 目前,我的prob1包含这段代码,当我尝试运行时出错 #!/bin/bash print ARCHIVE 您可以通过在shell变量前面加上$前缀来展开它,并使用echo或printf命令打印它-shell没有print命令:

如果我在我的环境中定义存档文件夹并将其导出,那么如何在shell脚本中访问它并运行程序

ARCHIVE=/home/kschmidt/public_html/CS265/Assignments/DrMath/Archive
export ARCHIVE
./prob1
目前,我的prob1包含这段代码,当我尝试运行时出错

#!/bin/bash
print ARCHIVE

您可以通过在shell变量前面加上
$
前缀来展开它,并使用
echo
printf
命令打印它-shell没有
print
命令:

echo "$ARCHIVE"

另外,在脚本中使用相对路径(如
/prob1
)是不好的,除非您显式地
cd
ing到存在
prob1
的目录。因此,要么:

  • 在使用相对路径调用脚本目录之前,对脚本目录执行显式
    cd

  • 使用绝对路径(如/path/to/prob1)

相关的:


prob1的代码应该如下所示:

#!/bin/bash
bash $ARCHIVE
然后按如下方式运行prob1:

bash prob1

我希望这能帮上忙。

太好了,谢谢!还有一个简短的问题。我怎样才能循环遍历目录中的所有文件并打印它们呢?这很简单,下面是代码片段
bash prob1