shell脚本错误期待 “做”
#!/bin/sh
while true ; do
echo "WTF"
done
这是给一个语法错误: 语法错误:意外的文件结束(预计 “做”)shell脚本错误期待 “做”
我也试过:
#!/bin/sh
while :
do
echo "WTF"
done
我怀疑行结束。
尝试:
hexdump -C yourscript.sh
,寻找0d 0a
序列。您可以剥离与tr
命令\r
(0d
):
cat yourscript.sh | tr -d '\r' >> yournewscript.sh
我看到了0d 0a序列,但是你的行用tr命令去除它们并不适合我。之后我使用vi并没有工作,现在它工作的很好!谢谢 – Jordan 2011-03-30 21:17:17
没问题。如果您通过FTP将脚本上传到您的linux/unix盒,您可以选择ascii/text格式,并且FTP将为您处理行结束转换。另一方面,如果您以其他方式创建文件,则tr是剥离不需要的字符的好工具。 – 2011-03-30 21:28:12
给这是一个尝试:
#!/bin/sh
while [ true ]
do
echo "WTF"
done
请特别注意在该行的空间“而[真]”
啊,哎呀......打败了我。 ;) – jwir3 2011-03-30 20:08:27
这两个工作对我罚款。尝试通过vi输入它,因为它可能最终会成为脚本中的一些字符编码/换行符。 – dotalchemy 2011-03-30 20:06:14
奇怪的是你的第一次尝试为我找到。也许你的bash有一个*过滤器:)。您第一次失败时可以提供的其他任何信息? – 2011-03-30 20:08:13