您的位置:首页 > 运维架构 > Shell

shell 脚本之for

2016-06-03 10:43 357 查看
SUBDIR="joan joanna"

for subdir in $SUBDIR; 

do
echo "building " $subdir; 

done

结果:

building  joan

building  joanna

结果正常。

SUBDIR="1 2 3 4"

for subdir in $SUBDIR; 

do
echo "building " $subdir; 

done

结果:

building  1

building  2

building  3

building  4

结果正常。

若在定义变量列表时没加引号,就出现错误。如:

SUBDIR=joan joanna

for subdir in $SUBDIR; 

do
echo "building " $subdir; 

done

运行出现错误,无法通过。

SUBDIR=10

for subdir in $SUBDIR; 

do
echo "building " $subdir; 

done

结果:

building  10

正常。

SUBDIR=“10”

for subdir in $SUBDIR; 

do
echo "building " $subdir; 

done

结果:

building  10

正常。

总结:定义值,随后遍历定义的值中,对于数据列表需要用引号引起来;单个数据是否加引号无所谓。

定义列表变量还有一种写法:在in后直接写出变量列表。

for subdir in joan joaaa; 

do
echo "building " $subdir; 

done

结果正常:

building  joan

building  joaaa

若写成:

for subdir in "joan joaaa"

do
echo "building " $subdir 

done

结果:

building  joan joaaa

没有出现语法错误,但并没有得到我们需要的结果。

总结:in 后的列表如果加" ",会将其看做一个整体。

in后调用shell命令:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: