一行命令搞定/usr/bin/perl^M: bad interpreter 在*nix系统下使用Perl脚本有时会遇到如下错误:
/usr/bin/perl^M: bad interpreter: No such file or directory
最常见的原因是因为该脚本在windows系统下进行了编辑。
windows系统下的换行符是\r\n,而unix下面是只有\n的。如果要解决这个问题,只要去掉\r即可。
第一种解决方案是用sed(假设出问题的脚本名叫filename):
sed -i 's/\r$//' filename