我有以下shell脚本'geturl.sh':
wget -O /dev/null http://google.com/$1
wget -O /dev/null http://google.com/$1
当我使用'./geturl.sh news'运行时,它会尝试在第一行wget http://google.com/news%0D,在第二行尝试http://google.com/news。
为什么它会计算换行符,我该如何解决?
由于
答案 0 :(得分:0)
如果使用Unix编辑器创建文件,则不会/不应该有回车符[chr(13),0x0D或^ M)]字符。 Unix换行符只是换行符[chr(10),0x0A或^ J)]。回车对shell没有任何特殊含义,通常会导致不必要的行为。
你可以使用sed修复它:
sed -i 's/\r//' geturl.sh