一个非常常见的问题,但我无法使用 sed 解决它。
我有一个脚本文件(一批命令)说myfile.txt
要立即执行以创建一个列表。现在,当我执行批处理操作时,我的命令行界面清楚地显示它无法解析命令,因为换行符^M
在每行的末尾加起来。
我认为sed
这是最好的方法。我试过:
sed -e 's/^M/d' myfile.txt > myfile1.txt
mv myfile1.txt myfile.txt
它没有用。我也试过这个,但没有奏效:
sed -e 's/^M//g' myfile.txt > myfile1.txt
mv myfile1.txt myfile.txt
然后我想可能sed
是把它当作行首的 M 字符,因此没有结果。所以我尝试了:
sed -e 's/\^M//g' myfile.txt > myfile1.txt
mv myfile1.txt myfile.txt
但没有变化。我在做一个基本的错误吗?请建议,因为我不擅长sed
。
我找到了一个解决方案,即在 vi 编辑器中打开文件并在命令模式下执行以下操作:
:set fileformat=unix
:w
但我也想要它sed
。