zoukankan      html  css  js  c++  java
  • syntax error near unexpected token `do(写的shell脚本出现格式问题)>1.问题2.展示信息3.解决方案

    1问题:Linux和windows下的回车换行符不兼容的问题

    [root@node-01 script]# sh start_zk.sh
    art_zk.sh: line 3: syntax error near unexpected token `do
    'tart_zk.sh: line 3: `do

    2.展示信息:

    此处我贴出了源码;大家可以试一试:

    #!/bin/sh
    for host in node-01 node-02 node-03
    do
    ssh $host "source /etc/profile;nohup zkServer.sh > /dev/null 2>&1 &"
    echo "$host zk is running"
    done

    3.解决方案(有两种):

      看似写的完全没有问题的逻辑代码.但是只要运行就会出错.

      本人是在wind本地写的shell命令,问题主要出在自己在wind上写的内容,而需要上传到linux系统上运行就会出现格式问题.

      (第一种)(01).是win下的格式图片:

        

      (02).是linux下的格式图片:

        

         (03)设置显示上面那些黑色块:CRLF和LF

          notepad++中首先设置视图->显示符号->显示所有符号,然后就看到了预料到的,所有的回车换行都是windows的CRLF

          其次设置:编辑->文档格式转换->转换为UNIX格式

        (04)运行成功:

          

    (第二种)解决方案:

      这里就不用上面的案例举例.这是补充方式:

        (1)如果在wind上写好的没有更改格式,也可以在linux上进行查询和更改

        (2)例如root目录下有一个 itcast_gdm_user_basic.sh文件

        (3)vim  itcast_gdm_user_basic.sh

        (4)进去以后直接输入  :set fileformat    回车    

          如果显示是fileformat=dos   就说明是wind格式

          如果显示是fileformat=unix 就说明是linux格式

         (5)更改格式:  直接输入  :set fileformat=unix  回车就更该完成

         (6)再次确认是否成功,重新执行(4)

  • 相关阅读:
    linux-网卡故障
    css hack
    IE7的overflow失效的解决方法
    Js中 关于top、clientTop、scrollTop、offsetTop的用法
    javascript作用域(Scope),简述上下文(context)和作用域的定义
    统计代码行数的小技巧
    sql复制表、拷贝表、临时表
    string.format
    手机号正则验证
    getBoundingClientRect() 来获取页面元素的位置
  • 原文地址:https://www.cnblogs.com/xinliang1788/p/10053178.html
Copyright © 2011-2022 走看看