Shelll 错误 syntax error: unexpected end of file

 

  今天shell一直运行正常,修改了几次,反倒不能运行了,我是在windows下修改的shell,开始怀疑是windows和linux文件格式转换错误,看了网上的也有说是这个,但是我的几经修改还是不行,最后发现时语法错误---多了一个引号。

     echo "Dir " $WORK_DIR has already exist "-------   就是这个错误;修改为  echo "Dir  $WORK_DIR has already exist "。

 

 

    下面是其他解决方式。

1, dos文件转换成unix文件格式
    dos格式文件传输到unix系统时,会在每行的结尾多一个^M,当然也有可能看不到,但是在vi的时候,会在下面显示此文件的格式,比如 "dos.txt" [dos] 120L, 2532C字样,表示是一个[dos]格式文件,如果是MAC系统的,会显示[MAC],因为文件格式的原因有时会导致我们的unix程序,或者shell程序出现错误,那么需要把这些dos文件格式转换成unix格式,方法是
     vi   dos.txt        
     :set fileformat=unix
     :w                     

这样文件就转换成unix格式文件了,一般在windows机器上编写好了文件传到unix下就可能会出现这样的情况,而一般我们使用ftp命令,常常会加上bin参数表示二进制传输,可是试一下不加bin参数,可能传到unix下就是unix格式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值