关于shell文件中出现syntax error: unexpected end of file
2015-11-30 11:55
603 查看
有两种情况会出现这种错误
1.你在window下编辑的文件直接拷贝到linux下会报这种错(如果你确定你的文件没有在window下编辑过,可直接看第二种情况)
解决方法:利用dos2unix将文件转换为unix(本人用os,命令brew install dos2unix, centos下用yum,ubuntu用apt-get)
安装完后运行: dos2unix -n profile profile 就解决了
2.如果第一种情况转换后还有问题,说明你程序内部出现了问题
一般分为两种:if语句没有fi结尾,for循环没有done结尾。
正确的用法如下
if [];
then
echo "a"
else
echo "b"
fi
for i in *.sh; do
echo "c"
done
1.你在window下编辑的文件直接拷贝到linux下会报这种错(如果你确定你的文件没有在window下编辑过,可直接看第二种情况)
解决方法:利用dos2unix将文件转换为unix(本人用os,命令brew install dos2unix, centos下用yum,ubuntu用apt-get)
安装完后运行: dos2unix -n profile profile 就解决了
2.如果第一种情况转换后还有问题,说明你程序内部出现了问题
一般分为两种:if语句没有fi结尾,for循环没有done结尾。
正确的用法如下
if [];
then
echo "a"
else
echo "b"
fi
for i in *.sh; do
echo "c"
done
相关文章推荐
- shell编程之函数与信号捕捉
- 建立一个规范的shell脚本
- shell脚本监控目录下文件被篡改时报警
- 在VMWare虚拟机中安装ubuntu系统后,登进系统,桌面没有任何图标,可以用xshell远程连接
- 【Linux学习笔记】Shell 基础(3) — Shell流程控制语句
- 初识SHELL
- shell 11-29
- 全新 Mac 安装指南(编程篇)(环境变量、Shell 终端、SSH 远程连接)
- linux shell
- shell 脚本之条件测试用法
- 小项目-linux下简单shell
- Linux终端的总结和shell
- 【Linux运维入门】windows环境下操作Linux的两大利器-Xshell & WinSCP
- 通用shellcode的编写、调用 实验缓冲区溢出攻击(非远程)调用shellcode实例(二)
- linux shell对应的配置文件是怎么被执行的呢?-----聊聊/etc/profile, ~/.bash_profile, ~/.bashrc等配置文件的执行流程
- linux shell中的变量PS1------定制linux shell提示符
- shell脚本的各种判断
- shell中的特殊变量和函数传参
- Shell时间(date)相关命令
- Shell时间(date)相关命令