扫码关注官方订阅号
在本地windows,写了个sh脚本,用filezilla,sftp协议上传到center os下,权限777,但是执行总是报错,没有修改过任何字母,在centeros下重新创建了个sh文件,把内容复制进去,然后就可以正常运行了,完全不懂这是为何,把两个文件下载下来对比的编码格式是一样的,求各位解答,实在是困惑!
欢迎选择我的课程,让我们一起见证您的进步~~
掐指一算,估计是编码问题,可以使用iconv 转码一下 就是从gb2312转到utf-8,下载下来编码一样是不是因为系统或者下载器的问题?
vim 打开 set ff=unix
set ff=unix
会不会是utf-8 的bom问题
也许是换行符的问题,参考我的这个提问:怒了!文件明明存在,却提示找不到,这是什么鬼?
PS:解决方案跟楼上 @苏生不惑 提供的一样。
方法有很多:
dos2unix
sed -i 's/\r//' CRLF.txt
哥们你也不贴出来报的什么错
在windows上编写的shell脚本放到linux中执行时建议用命令 set fileformats='unix'格式化语言
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
掐指一算,估计是编码问题,可以使用iconv 转码一下 就是从gb2312转到utf-8,下载下来编码一样是不是因为系统或者下载器的问题?
vim 打开
set ff=unix会不会是utf-8 的bom问题
也许是换行符的问题,参考我的这个提问:
怒了!文件明明存在,却提示找不到,这是什么鬼?
PS:解决方案跟楼上 @苏生不惑 提供的一样。
方法有很多:
dos2unix命令sed -i 's/\r//' CRLF.txt哥们你也不贴出来报的什么错
在windows上编写的shell脚本放到linux中执行时建议用命令 set fileformats='unix'格式化语言