Shell script fails: Syntax error: “(” unexpected google 一下. http://unix.stackexchange.com/questions/45781/shell-script-fails-syntax-error-unexpected The script does not begin with a shebang line, so the kernel executes it with /bin/sh. On Ubuntu, /bi…
这种错误只能说是坑,如果没有见到过,很可能就要摔里头.解决问题是重要的,但弄明白问题的来源,往往更为重要. 所以要先扯一下,换行和回车的历史遗留问题. 在计算机出现之前,有个玩意叫电传打字机.每秒钟可以打10个字符,但是在打完一行需要换行时,要用去0.2s. 这正好可以打2个字符,这段时间里如果有字符传过来,那么这些字符将被丢失. 很显然,要解决这个问题,最简单的办法就是浪费这个0.2s.同时,我们在写东西时,要把手换到下一行及每行的首位置,也就是说这是两个动作. 自然而然地,研发人员在每一行后…
SHELL syntax error:unexpected end of file 提示错误 if [ -n "$1" ] then " else " fi exit 执行sh my.sh par 提示syntax error:unexpected end of file.错误请问为什么啊? 文本编辑是在windows下通过记事本编写的这个文件,运行 在cygwin模拟LINUX软件环境下. 解决思路: DOS下文件和Linux下文件格式差异问题导致的. DOS下的…
有时执行脚本时会报错: [root@host1 shell]# sh -x test.sh + $'\r' : command not found test.: syntax error: unexpected end of file 原因可能是: 文本编辑是在windows下通过记事本或其它编辑器编写的这个文件,运行 在cygwin模拟LINUX软件环境下. 解决思路: DOS下文件和Linux下文件格式差异问题导致的. DOS下的文本文件是以\r\n作为断行标志的,表示成十六进制就是0D 0…
例如shell脚本在centos系统中能正常执行,而在ubuntu系统中执行会出现类似Syntax error: "(" unexpected的错误,一般这种是因为sh与bash有些地方不兼容,解决方式: 1.执行bash xx.sh 2.执行chmod +x xx.sh对shell脚本赋予执行权限,之后执行./xx.sh…
今天写了个较长的shell脚本,结构嵌套比较多,最后运行时,出现了syntax error: unexpected end of file的错误. 这个之前碰到过,经常在win系统转移脚本文件到unix系统时出现,但这次我是在Linux环境中写的,不存在这个问题,改了试也没用.关于系统文件格式转化: dos2unix #command line :set ff #在vim中查看文件的系统格式 :set fileformat=unix #在vim中将系统文件格式改为unix 在网上查了一圈,全部都…
src:http://www.2cto.com/os/201308/238962.html   执行某bash脚本是发生: syntax error: unexpected end of file 主要问题是由windows下拷出文件到linux下执行的结果,   因为windows某些文件格式与Linux并不是完全兼容,两种方法解决:   1.vim处理   :set fileformat=unix   :wq   2使用dos2unix工具   dos2unix file ---------…
引起此问题最可能的原因是: 在windows下编写的文件上传到linux执行. 我是在notepad++上编写的代码,之后上传到linux执行,报此错误.仔细检查,语法方面没有错误.上网查了一下,发现是windows和linux的换行不同导致的. windows中是回车+换行CRLF:linux下是就一个换行LF CR意思是carriage return,回车,\r,ASCII码为13 LF意思是linefeed,换行,\n,ASCII码为10 在notepad++中可以查看:视图-显示符号-显…
今天执行脚本的时候遇到错误,如下图: root@ApFree:/usr/sbin# ./conntrack_num_graph.sh ./conntrack_num_graph.sh: line : syntax error: unexpected "then" (expecting "}") root@ApFree:/usr/sbin# 我就纳闷了,这个脚本几天前是能正常执行的,今天执行怎么会出错,why? cat脚本一看如下: #!/bin/sh SITENAM…
有时我们在linux下执行一个sh文件,会报错“SYNTAX ERROR:UNEXPECTED END OF FILE”,这个现象主要是工作的系统环境改变造成的. 若最初脚本中是在windows下,使用sublime编辑器写.将shell脚本传至linux中:使用命令bash -x SCRIPT检查语法总是出一个错误 syntax error:unexpected end of file. 原因:dos文件传输到unix系统时,会在每行的结尾多一个^M,在vim的时候,当你用如下命令查看:cat…