我是靠谱客的博主 爱撒娇音响,最近开发中收集的这篇文章主要介绍SHELL脚本“SYNTAX ERROR:UNEXPECTED END OF FILE”解决方案,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
今天,自己在写一个一键安装http服务的脚本时,使用if语句编写,用bash -x 命令你给调试,都报错“SYNTAX ERROR:UNEXPECTED END OF FILE”,怎么改动都会报错,通过google,发现自己的错误了。
1、在最初脚本中是在windows下,使用sublime编辑器写。
将shell脚本传至linux中:使用命令bash -x SCRIPT
检查语法总是出一个错误 syntax error:unexpected end of file。
原因如下:
dos文件传输到unix系统时,会在每行的结尾多一个^M,在vim的时候,当你用如下命令查看:cat -A SCRIPT
示例:
[root@localhost~]#cat -A installhttp.sh
#!/bin/bash^M$
#The script is autoinstallhttp.sh^M$
#Author Joah^M$
#Version 1.0.0^M$
version=`grep -o " [0-9]>" /etc/centos-release`^M$
if [ $version -eq 7 ];do^M$
echo "We will install newversion.Please wait!"^M$
2、解决方法
使用命令dos2unix命令将SCRIPT脚本格式
[root@localhost~]#dos2unix installhttp.sh
dos2unix: converting file installhttp.sh to UNIX format ...
或者:
[root@localhost/app]#vim installhttp.sh
:set fileformat=unix
:wq
[root@localhost/app]#cat -A installhttp.sh
$
$
#/bin/bash$
#$
#The script is autoinstallhttp.sh$
#Author Joah$
#Version 1.0.0$
version=`grep -o " [0-9]>" /etc/centos-release$
最后
以上就是爱撒娇音响为你收集整理的SHELL脚本“SYNTAX ERROR:UNEXPECTED END OF FILE”解决方案的全部内容,希望文章能够帮你解决SHELL脚本“SYNTAX ERROR:UNEXPECTED END OF FILE”解决方案所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复