试了好几个系统都是这样,请问为啥会这样呀,看了好几遍不知道问题出在哪里,感觉没有调用bash解释器
什么文本,你的脚本不就是输出变量res2的值么,你先赋值,再输出,不就是输出你赋值的内容么
本来就是呀 你给的res2不就是一个字符串 然后你echo输出到控制台了呀
你这个脚本的作用就是打印出res2这个变量,而res2这个变量里面存储的就是'ls/'这个字符串,所以执行了之后就是把'ls/'这行文本打印出来。
那你在脚本里直接写ls /不就得了,为什么要写个echo
[root@server ~]# cat function.sh
#!/bin/bash
function fun1() {
echo "I am a boy~"
}
count=1
while [ $count -le 5 ]
do
fun1
count=$[ $count + 1 ]
done
echo "End of loop"
fun1
echo "End of script"
[root@server ~]# sh function.sh
I am a boy~
I am a boy~
I am a boy~
I am a boy~
I am a boy~
End of loop
I am a boy~
End of script