0

文字を1.txt含まない単語のみをテキストファイルから取得し、にエクスポートしたいのですが、何も返されません:abc2.txt

grep -o [^abc]*$ 1.txt > 2.txt

を含まない単語を取得するにはどうすればよいですaか?bc

4

2 に答える 2

1

これを試して:

grep -w -o -P '[^abc\s]*' 1.txt > 2.txt

そのため、「単語」の途中に空白を入れることもできません。

正規表現を Perl として解釈し、\s プレースホルダーを許可するために、-P フラグも含めました。

 -P, --perl-regexp
          Interpret PATTERN as a Perl regular expression.
于 2013-10-08T23:34:02.687 に答える
1

GNU grep を使用すると使用できます

grep -w -o '[^abc]*' 1.txt > 2.txt

関連する部分は次のmanとおりです。

  -w, --word-regexp
          Select only those lines containing matches that form whole words...

  -o, --only-matching
          Print  only  the  matched  (non-empty)  parts  of  a  matching line...
于 2013-10-08T23:10:43.733 に答える