バッチ ファイル内の 120 文字を超える行のリストを取得したいと考えています。このために、sedを使用することを考えました。私は試しましたが、成功しませんでした。どうすればこれを達成できますか? sed を使用する以外にリストを取得する方法はありますか?? ありがとう..
質問する
30690 次
3 に答える
29
awk を使用してこれを行う別の方法:
cat file | awk 'length($0) > 120'
于 2012-10-10T08:57:29.363 に答える
19
grep
とその繰り返し量指定子を使用できます。
grep '.\{120\}' script.sh
于 2012-10-10T08:56:16.343 に答える
10
sed を使用すると、いくつかの選択肢があります。
sed -e '/.\{120\}/!d'
sed -e '/^.\{,119\}$/d'
sed -ne '/.\{120\}/p'
最初のオプションは、(少なくとも) 120 文字を持たない行に一致し (式の後は、その前のパターンに一致しない!
行でコマンドを実行することです)、それらを削除します (つまり、それらを出力しません)。 )。
2 番目のオプションは、開始 ( ^
) から終了 ( $
) までの合計文字数が 0 から 119 の行に一致します。これらの行も削除されます。
3 番目のオプションは、-n
フラグを使用することです。これは、sed にデフォルトで行を印刷しないように指示し、指示した場合にのみ何かを印刷するように指示します。この場合、(少なくとも) 120 文字の行を照合し、それらを出力するために使用p
します。
于 2012-10-10T11:12:23.487 に答える