当前位置: > shell编程 >

shell 之间调用传递值

时间:2014-11-27 15:25来源:linux.it.net.cn 作者:IT

1.shell 一般传值的时候直接把要传递的值放在要调用的shell后面就行比如有如下 shell shell1.sh

echo $0
echo $1
echo $2

echo $3

echo $3

如果你这么调用 shell1.sh a b cd e

打印的结果就是:

a

b

cd

e

2.如果你在另一个shell文件 shell2.sh 中要调用这个shell

param1=a

param2=b

param3="12 34"

param3="c"

.shell1.sh "$param1" "$param2" "$param3" "$param4"

那么结果打印的就是

12 

34 

而不是你所认为的

 

12 34 

c

3.解决办法:修改 shell2.sh 文件为

 

param1=a

param2=b

param3="12 34"

param3="c"

.shell1.sh "$param1" "$param2" "'$param3'" "$param4"

 

注意:shell之间传递变量参数的时候,为了避免空格,需要使用的写法是 "'$param'",就是变量外边扩上单引号然后再扩上双引号。

(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容