echo"ley in file->\c"
read filename
echo"key in data:"
while [\n $x]
do
read x
echo $x>>$ filename
done
cat $ filename
不理解 while [\n $x] 这里是什么意思啊?
shell 编程中 while [\n $x] 什么意思?
答案:2 悬赏:20 手机版
解决时间 2021-03-11 08:39
- 提问者网友:你独家记忆
- 2021-03-10 22:01
最佳答案
- 五星知识达人网友:荒野風
- 2021-03-10 22:47
这里写错了吧?
[ ] 是测试表达式,其中并没有 \n 这种用法,应该是 -n
[ -n $x ] 表示字符串x非空时执行循环体。注意空格,[ ] 与里面内容之间要有空格的。
另外,
echo $x>>$ filename --> 这里$x最好写为"$x"防止字符串内容中含有空格,这样会被shell分别解释为echo的多个参数从而报参数个数错误的。
$ filename --> 这个中间不应该有空格的。
[ ] 是测试表达式,其中并没有 \n 这种用法,应该是 -n
[ -n $x ] 表示字符串x非空时执行循环体。注意空格,[ ] 与里面内容之间要有空格的。
另外,
echo $x>>$ filename --> 这里$x最好写为"$x"防止字符串内容中含有空格,这样会被shell分别解释为echo的多个参数从而报参数个数错误的。
$ filename --> 这个中间不应该有空格的。
全部回答
- 1楼网友:猎心人
- 2021-03-10 23:37
$*是此行命令所在函数(脚本)的所有被传入参数的合集
与$@类似,不用引号的情况下没有区别
区别是当被""扩起来以后
"$*"被当做一个字符串
"$@"被当做n个字符串(n=参数个数)
for 是循环语句
意思就是,当file取每一个参数的值时,执行do后面的循环体
完整语句是
for file in $*;do
#some_command
echo $file
done
上面这就是循环打印每个参数.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯