コマンドを提供するBusyBoxv1.01があります。したがって、-oはgrepに含まれていません。grep -o
... -oなしで動作を取得するにはどうすればよいですか?
3 に答える
3
awk
解決:
awk '/PATTERN/{match($0,/PATTERN/);print substr($0,RSTART,RLENGTH)}' inputFile
于 2012-07-07T06:44:56.033 に答える
2
持っているsed
場合は、単純な正規表現を使用できます。(linuxquestions.orgを参照)
sed -n 's/.*\(PATTERN\).*/\1/p' FILE
したがってStackOverflow
、ファイル内のテキストのみを検索するには、次のようにfile.txt
記述します。
sed -n 's/.*\(StackOverflow\).*/\1/p' file.txt
sedコマンドのパターンは正規表現であることを忘れないでください。したがって、パターンに正規表現のメタ文字が含まれている場合は、それらをエスケープする必要があります。
于 2012-07-07T06:30:13.047 に答える
0
代わりにPerlを使用できます。
perl -lne 'print $1 while /(pattern)/g' FILE
于 2012-07-07T06:37:32.297 に答える