1

コマンドを提供するBusyBoxv1.01があります。したがって、-oはgrepに含まれていません。grep -o... -oなしで動作を取得するにはどうすればよいですか?

4

3 に答える 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 に答える