我正在编写一个shell脚本,我应该在其中创建1个文本文件。当我这样做时,文件名末尾会出现一个问号。是什么原因?
我正在尝试使用bash脚本中的方法。
1)grep ERROR a1* > text.txt
2)touch text.txt
在这两种方法中,代替text.txt
,生成的文件为text.txt?
我应该怎么做才能克服这个问题?
答案 0 :(得分:2)
听起来你的脚本使用\r\n
作为行结尾,这是典型的DOS样式行结尾。类Unix系统使用\n
。您应该尝试更改换行符,例如使用您喜欢的文本编辑器:
vim +'set ff=unix | x' my_script
或dos2unix
:
dos2unix my_script
或sed:
sed -i 's/\r$//' my_script