捡来的笔记

Linux执行Shell脚本时cd命令报错的解决办法

转载请注明出处:
http://dyhdyh.com/archives/152.html

案件重现

我的Shell脚本内容如图

然后在终端里执行了这个脚本文件,结果报错说没有这个文件夹,但是确实是存在这个目录的

 

展开调查

1.执行sh -x命令来调试脚本,结尾竟然有一个  \r  ,系统把\r当做目录的一部分了,所以也就找不到这个目录

2.多次尝试后发现跟在Windows下编辑脚本有关,因为Windows的换行是以  \r\n  结束,Linux的换行是以  \n  结束;

我这个脚本是在Windows编辑的,所以传到Linux再识别就多出了一个\r

 

解决办法

在Linux上新建一个脚本,把内容粘贴过去,再保存即可。

点赞

发表评论