如何将变量作为另一个脚本的路径调用?

时间:2016-04-27 09:26:17

标签: linux bash

实施例

Var = '/etc/sysconfig/..'
export Var
bash script1.sh

在另一个script1

cat $Var

问题。该变量不会调用此路径中的文件

3 个答案:

答案 0 :(得分:2)

这样做:

Var='/etc/sysconfig/..'
bash script1.sh "$Var"

然后在script1.sh

Var=$1
cat "$Var"

"$Var"周围的引号是支持包含空格的路径所必需的。

答案 1 :(得分:2)

您的变量分配错误,应该是:

Var='/etc/sysconfig/..' 

=周围没有空格。

如果您只想为一个脚本发送环境变量,那么您可以使用:

Var='/etc/sysconfig/..' ./my_script.sh

my_script.sh内:

printf "%s\n" "$Var"
# Will print /etc/sysconfig/..

如果您要向my_script.sh发送参数,请执行@JohnZwinck suggested。我建议的只是更改环境变量,不应滥用将常规变量发送/接收到命令。

答案 2 :(得分:0)

我认为不需要更多的事情

脚本1

#!/bin/bash
a="/home/example"  ### you can do with export command also export a="/home/example"

sctipt2 ## make effective

. script1; 
cd $a