发布网友 发布时间:2024-10-23 23:23
共4个回答
热心网友 时间:2024-10-25 22:28
把这句if test $timeofday = "yes" | "y" ; then
改为if test $timeofday = "yes" -o $timeofday = "y" ; then
就可以了,shell表示或者用-o
热心网友 时间:2024-10-25 22:29
| 不是 shell 的“或”语法, | 是管道符。
|| 才是“或”,区别就是一个还是两个。
不过我记得 test 好像不能这么“或”吧?
shell 语法里面的条件语句好像不是普通的那种类似 C 的语法。
热心网友 时间:2024-10-25 22:29
在shell里面,if的statement的逻辑或用or表示,你可以去查一下bash编程
热心网友 时间:2024-10-25 22:30
我目前在家,电脑里没有环境帮你测试一下,无法给出你个很肯定的答案。我个人认为是shell把你的|符号理解成为管道描述符了。你的意思是想使用逻辑或吧。|在shell里是位逻辑或的意思,用在此处也不对。如果被shell理解成为管道输出当然更没意义了。你可以把我上面的关键字再搜索学习一下试试看吧