博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SHELL syntax error:unexpected end of file 提示错误
阅读量:6411 次
发布时间:2019-06-23

本文共 570 字,大约阅读时间需要 1 分钟。

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

if [ -n "$1" ]then  echo "111"else  echo "222"fiexit 0

  执行sh my.sh par 提示syntax error:unexpected end of file.错误请问为什么啊?

  文本编辑是在windows下通过记事本编写的这个文件,运行 在cygwin模拟LINUX软件环境下。

解决思路:

  DOS下文件和Linux下文件格式差异问题导致的。

  DOS下的文本文件是以\r\n作为断行标志的,表示成十六进制就是0D 0A。而Unix下的文本文件是以\n作为断行标志的,表示成十六进制就是0A

【在windows里,换行用的两个符号,回车\r,换行符号\n,在linux下只需一个符号\n就可以了.】

  DOS格式的文本文件在Linux下,用较低版本的vi打开时行尾会显示^M,当然也有可能看不到,但是在vi的时候,会在下面显示此文件的格式,"M.txt" [dos] 8L, 72C表示是一个dos文件格式。

解决方案:

  使用下面的命令将文件格式设置为unix格式即可解决上述错误。

vi M.txt:set fileformat=unix:wq

 

参考文档:

小节:

 

 

转载地址:http://guzra.baihongyu.com/

你可能感兴趣的文章
linux包之iproute之ss命令
查看>>
ListView与ScrollView冲突的4种解决方案
查看>>
python中的import
查看>>
26. 使用fgetc()/fputc()实现文件的拷贝
查看>>
如何成为一个优秀的系统架构师
查看>>
18个有趣的API供你的前端开发测试之用
查看>>
AD域中客户端时间与服务器时间不同步的解决办法
查看>>
HAProxy+Hive构建高可用数据挖掘集群
查看>>
网站相关技术探究keepalive_timeout:
查看>>
思科路由器PPOE client+NAT解决地址回流问题测试
查看>>
Windows Server 2012新特性:证书申请加密
查看>>
zabbix监控之Centos基于LNMP环境安装
查看>>
Linux文本比较命令:diff
查看>>
使用nginx+Apache负载均衡及动静分离
查看>>
C#基础知识整理:基础知识(10) 静态
查看>>
MongoDB实战(1)MongoDB安装与存储结构
查看>>
sccm 2007 r2 step by step 之十八 报表-报表点
查看>>
FreeMarker中调用Java方法的实现
查看>>
Kubernetes & Docker 容器网络终极之战
查看>>
DVWA系列之15 文件包含漏洞利用
查看>>