3

似乎这应该从每行的开头最多删除 2 个空格:cat test.txt | 9 sed 's/^ //g; 相反,它会替换行首的所有空格。为了比较,GNU 的 sed 似乎与我在这里所期望的一样,但我对学习 Plan 9 方式很感兴趣。

注意:9 sed这里的语法是因为我从 plan9port 运行它。

更详细地说:

$ cat test.txt
This
  is
    a test.
Bye
$ cat test.txt | 9 sed 's/^  //g'
This
is
a test.
Bye

我希望输出更像是使用 GNU sed

$ cat test.txt | sed 's/^  //g'
This
is
  a test.
Bye
4

1 回答 1

1

看起来计划 9s sed 在治疗时被破坏了

sed 's/^  //g'

好像是(伪代码):

do
    sed 's/^  //'
until the sed output is no longer different from the input

或者:

sed 's/^  *//'

或类似的,而不是正确的解释,就像g不存在一样:

sed 's/^  //'
于 2018-09-23T21:18:16.833 回答