我有一个类似于下面的文件:
for (i = 0; i < 100; i++)
for (i = 0; i < 100; i++)
for (i = 0; i < 100; i++)
for (i = 0; i < 100; i++)
for (i = 0; i < 100; i++)
for (i = 0; i < 100; i++)
for (i = 0; i < 100; i++)
我希望它看起来像这样(去除缩进):
for (i = 0; i < 100; i++)
for (i = 0; i < 100; i++)
for (i = 0; i < 100; i++)
for (i = 0; i < 100; i++)
for (i = 0; i < 100; i++)
for (i = 0; i < 100; i++)
for (i = 0; i < 100; i++)
如何实现这个功能(可能使用sed
)?
$''
来正确解释\t
。必须使用单引号而不是双引号。sed $'s/^[ \t]*//'
。此外,Mac OSX的sed
不是GNU
版本,因此不支持许多GNU
特性。@per @chris - wisbuckysed
命令需要一个临时文件来进行内联替换。通常只需在-i
后添加''
即可满足此要求。最终的命令是:sed -i '' 's/\s*//' yourfile
。 - Ben