SHELL syntax error:unexpected end of file 提示错误

myepoch 2007-11-01 11:47:43
if
[ -n "$1" ]
then
echo "111"
else
echo "222"
fi
exit 0

执行sh my.sh par 提示syntax error:unexpected end of file.错误请问为什么啊
我是在windows下通过记事本编写的这个文件,运行 在cygwin模拟LINUX软件环境下。
我想语法本身应该没有问题的,是不是字符集编码影响的呢,如何更改啊。
...全文
6765 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
cceczjxy 2007-11-01
  • 打赏
  • 举报
回复
可能是回车符\r的问题,你把它去掉.
在windows里,换行用的两个符号,回车换\r行符号\n,在linux下只需一个符号\n就可以了.
mymtom 2007-11-01
  • 打赏
  • 举报
回复
学Unix就用vi吧!
mymtom 2007-11-01
  • 打赏
  • 举报
回复
经过实际验证,2楼说的是对的,在vi里用
:1, $ s/^M//
替换掉^M就可以了:

rezood 2007-11-01
  • 打赏
  • 举报
回复
ftp文件的时候你是否是用bin格式,需要用asc方式才行
myepoch 2007-11-01
  • 打赏
  • 举报
回复
#!/bin/bash
if [ -n "$1" ]
then
echo "111"
else
echo "222"
fi
exit 0
-----------------
sh -x my.sh par
依然提示提示syntax error:unexpected end of file.这个错误啊。真可恶啊。
mymtom 2007-11-01
  • 打赏
  • 举报
回复
用sh的xtrace选项跟踪一下。
sh -x my.sh par
yecheng_110 2007-11-01
  • 打赏
  • 举报
回复
dos2unix
myepoch 2007-11-01
  • 打赏
  • 举报
回复
怎么回车啊,我上面的代码已经回车了 啊

23,127

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧