Linux下shell脚本出现“权限不够”和“坏的解释器: 没有那个文件或目录”问题

今天在运行脚本时,出现了两个问题。
问题一

[lin@localhost miniftpd]$ ./miniftpd.sh
-bash: ./miniftpd.sh: 权限不够

解决方法:执行下面指令添加权限

chmod u+x miniftpd,sh

u 代表用户.
g 代表用户组.
o 代表其他.
a 代表所有.
问题二

[lin@localhost miniftpd]$ ./miniftpd.sh
-bash: ./miniftpd.sh: /bin/bash^M: 坏的解释器: 没有那个文件或目录

原因是:这个文件是在Windows 下编辑的,在Windows下每一行结尾是\n\r,而Linux下则是\n,所以才会有 多出来的\r。
解决方法:

sed -i 's/\r$//' 脚本文件名

指令会把 xxxxxxx.sh 中的\r 替换成空白!

你可能感兴趣的:(Linux)