最新消息: 新版网站上线了!!!

Linux运行shell脚本提示No such file or directory,因为windows环境编辑的文件

Linux执行.sh文件,提示No such file or directory的问题:

[root@bogon shell]# sh ./import.sh

: No such file or directory/shell/wor.sql

但是实质上我的文件是存在的


原因:在windows中写好shell脚本测试正常,但是上传到 Linux 上以脚本方式运行命令时提示No such file or directory错误,那么一般是文件格式是dos格式的缘故,改成unix 格式即可。一般有如下几种修改办法。


解决办法:

1)在Windows下转换: 

利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行。转换方式如下(UltraEdit):File-->Conversions-->DOS->UNIX即可。 


2)方法 

用vim打开该sh文件,输入:

:set ff 

回车,显示fileformat=dos,重新设置下文件格式:

:set ff=unix 

保存退出: 

:wq 

再执行,竟然可以了 


3)在Linux中的权限转换 

也可在Linux中转换: 

首先要确保文件有可执行权限 

#chmod u+x filename 

然后修改文件格式 

#vi filename 

三种方法都可以方便快速的解决关于Linux执行.sh文件,提示No such file or directory这个问题了。 


所以,程序尽量在Linux下编写,迁移时,也许会少很多问题。


转载请注明:谷谷点程序 » Linux运行shell脚本提示No such file or directory,因为windows环境编辑的文件