<id>次のように、との間のすべての数値を抽出したい</id>:
<id>123</id>
<id>456</id>
を含むファイルを取得するには
123
456
私はgrepにかなり慣れていません。答えてくれてありがとう。
これはそれを作ることができます:
$ grep -Po '(?<=<id>)\d+' file
123
456
その後の数字を探して<id>出力します。
-oは、「一致する行の一致した (空でない) 部分のみを出力し、そのような各部分を別々の出力行に出力する」の略です。-Pは「PATTERN を Perl 正規表現として解釈する」の略です。(?<=<id>)\d+意味:\d+次の のみに一致します<id>。詳細については、Regex チュートリアル - Lookaheadおよびsudo_O によるこの素敵な説明を参照してください。