-bash: cd: $‘/…\r’: 没有那个文件或目录 问题解决
起因是想在ubuntu系统上写sh方便py脚本的测试,但是在写过程中发现sh文件一直出错。
一直在检查各种环境,目录,确保都没问题,后面发现了这个隐蔽的错误。
原因
这个错误提示表明脚本文件中的文件夹路径存在问题,导致无法找到指定的文件夹。其中的 \r 字符表示回车符,可能是由于脚本文件在不同操作系统或文本编辑器之间的换行符差异导致的。
‘Windows格式文件的换行符为\r\n ,而Unix&Linux文件的换行符为\n.’
因此如果通过window系统编写的sh文件,在linux系统下不能够直接运行,
linux系统下的文本编辑器好像换行符也是\r\n,因此我在ubuntu下写sh文件就运行不起来
解决方法
dos2unix命令 将Windows格式文件转换为Unix、Linux格式的实用命令。其实就是将文件中的\r\n 转换为\n
(dos2unix)则相反
dos2unix open_folder.sh
移除回车符并将脚本文件的格式转换为适用于Linux的格式
另外需要注意的是:尽量手动输入文件夹路径:因为如果其他地方复制了文件夹路径,粘贴可以会有不可见的特殊字符干扰。
运行成功!!