问题
I am writing one shell script in which I am supposed to create 1 text file. When I do this, a question mark comes at the end of file name. what is the reason?
I am trying below methods in bash script.
1) grep ERROR a1* > text.txt
2) touch text.txt
In both the methods, instead of text.txt, there is a file generated as text.txt?
what should I do to overcome this?
回答1:
Sounds like you script uses \r\n as line endings, this is typical DOS style line endings. Unix like systems uses \n. You should try to change the line feeds, eg with your favorite text editor:
vim +'set ff=unix | x' my_script
Or with dos2unix:
dos2unix my_script
Or sed:
sed -i 's/\r$//' my_script
来源:https://stackoverflow.com/questions/37566064/why-questionmark-comes-in-the-end-of-filename-when-i-create-txt-file-through-sh