コマンド
(例)文字数が20字未満の行のみ出力
awk ' {if(length($0) < 20) print $0 }'
以下、補足です
補足
awkに内蔵されているlength関数を用います。
pwgen X 1 でX桁の文字列を生成できますので
3行のテキストを以下のように用意します。
$ pwgen 10 1 > test.txt $ pwgen 15 1 >> test.txt $ pwgen 20 1 >> test.txt
作成したテキストファイルに対して冒頭のコマンドで表示させてみます。
$ cat test.txt | awk ' {if(length($0) < 20) print $0 }' veethaevuo hooriemohthuege $ cat test.txt | awk ' {if(length($0) <= 20) print $0 }' veethaevuo hooriemohthuege keechaeghoaniefohxai
成功しました。
ちなみに、このlength関数は文字列の切り出しでよく使われます。
例えば、上記の文字列の最後の3文字だけを切り出す場合、
substr(対象文字列,切り出し箇所場所,切り出す文字数)を用いて
$ cat test.csv | awk '{ print substr($0,length($0)-2,3) }' vuo ege xai
といった具合です。
以上、ご参考ください。