使用bash删除文件行每个开头的空格

G-7*_*-71 14 linux bash whitespace

如何使用bash删除每行文件中的空格,例如file1.txt.之前:

  gg g
 gg g
t  ttt
Run Code Online (Sandbox Code Playgroud)

后:

gg g
gg g
t  ttt
Run Code Online (Sandbox Code Playgroud)

Sch*_*ron 27

sed -i 's/ //g' your_file 会这样做,在原地修改文件.

要仅删除一行开头的空格,请使用 sed -i 's/^ *//' your_file

在第一个表达式中,我们用空格替换所有空格.在第二个中,我们使用^关键字在开头替换

  • 是的,你的问题是否意味着别的什么?`s/^*//`删除前导空格,如果这是你想要的......但也许你也应该编辑你的问题. (4认同)
  • 这个脚本删除所有空格 (3认同)

kev*_*kev 15

tr(删除所有空格):

$ tr -d ' ' <input.txt >output.txt
$ mv output.txt input.txt
Run Code Online (Sandbox Code Playgroud)

sed(删除前导空格)

$ sed -i 's/^ *//' input.txt
Run Code Online (Sandbox Code Playgroud)