shell脚本里while循环出错。与$相关。

sh/bash/dash/ksh/zsh等Shell脚本
回复
魔双月壁
帖子: 4
注册时间: 2018-07-20 9:16
系统: win7
送出感谢: 0
接收感谢: 0

shell脚本里while循环出错。与$相关。

#1

帖子 魔双月壁 » 2018-08-03 11:04

脚本程序和执行结果如下面两张图。
第一个while循环是对的,第二个while循环出错。问题已经注释在脚本程序里了。

第一个while里的$0=0.怎么到第二个while里$0=1?$0应该代表的是命令本身吧。
多问一下 echo 命令后面如果什么都没有,显示的是什么?
谢谢!
20.png
19.png
19.png (23.95 KiB) 查看 20892 次
头像
astolia
论坛版主
帖子: 4414
注册时间: 2008-09-18 13:11
送出感谢: 1 次
接收感谢: 739 次

Re: shell脚本里while循环出错。与$相关。

#2

帖子 astolia » 2018-08-03 20:38

1、你输出的是$i,不是$0。要替换也是把$i替换成0,你怎么以为是把i替换
2、在循环开始时已经j++过了,所以第一次循环时$j的值是1不是0
3、echo输出空行,即一个换行符

你可以开调试模式看脚本具体怎么执行的
bash -x while.sh
回复

回到 “Shell脚本”