次のファイルが与えられた場合
$ cat a.txt
The quick brown fox jumps over the lazy dog
最初の部分は簡単に削除できますsed
$ sed 's/.*fox//' a.txt
jumps over the lazy dog
D
私はオプションで賢くしようとしました
D Delete up to the first embedded newline in the pattern space.
例
$ sed 's/fox/\n/; D' a.txt
ただし、これでは出力が得られません。私が試したのと同様sed
のオプションを使用して、行の最初の部分を削除できますか?D
これは、前fox
の部分が後の部分よりも短い場合に機能します。
$ sed 's/fox/\r/' a.txt
jumps over the lazy dog