我有一个巨大的.txt文件,我希望删除所有空格,换行符,缩进等。它应该是一个长字符串。
我试过
sed -i's / \ // g'test.txt
但没有任何反应
答案 0 :(得分:1)
sed -n "s/[[:blank:]]//g;H
$ {x;s/\n//g;p;}"
如果您想要包含新行,则需要H而不是$,因为sed默认逐行处理(因此行内没有新行)。使用-n和p是为了避免使用H
进行双重显示答案 1 :(得分:0)
似乎对我有用:
[~/Desktop]
==> cat test.txt
the quick brown fox
[~/Desktop]
==> sed -i "s/\ //g" test.txt
[~/Desktop]
==> cat test.txt
thequickbrownfox
答案 2 :(得分:0)
有时直接使用“”很难,特别是当你使用双引号时(涉及bash会在将字符串传递给sed之前解释它)。
sed -i -e 's/\s//g' file.txt
......应该有效(对我有用)。 “\ s”表示所有空格字符,并带有单引号'',表示bash在将其传递给sed之前不会解释它。
答案 3 :(得分:0)
当你使用cygwin时我认为你的操作系统是windows,那么你不需要使用bash来实现你的目标。只需用文本编辑器打开你的txt文件,然后用空格替换while空格,那么你txt文件中的所有whit空格都将被删除。
这种方法几乎可以满足各种清除工作。并且还可以申请excel或word等。
祝你好运!