由于回车符引起的shell错误

简介:

今天弟弟写shell时出现一个错误,源代码如下



zip -r ${1} ${2}


执行时出现错误

ae30195d7c63cf1131e494b285dbe69f97779a16


我也写了相同的语句

发现是可以执行的

9fd8afddaca9356242e9b21c0c93fd1eb5b77ef2

把两个文件对比一看,差别在于:

出错shell:

8b6d51f3de8e44a56e5dc07e22eae17a5c9d2ad6

正确shell:

e7958686980ae5e8219a23916feb52e59a018ef5


在linux下的回车是\n

在win下面的回车是\r\n

zip -r ${1} ${2}\r\n

linux会把${2}\r认为是一个文件名,所以找不到这个文件


因此尽量使用vi命令来写shell


相关文章
|
Shell
设置shell脚本执行错误自动退出
设置shell脚本执行错误自动退出
791 0