アイテムの多いファイルがあります。特定のコンポーネントのIDを抽出したいと思います。 IDの前にabcd.inst 同じ単語を1つだけ意味します。
abcd.inst.sdt.gh-wer-1.anrg6ljrgo5rdtyc25lgtr2wf7iuhu2f5scwehpjjzerzpnphn3tzy4w2wjq
私がするたびに
cat abcd.txt | grep "abcd.inst"
私が得た結果は次のとおりです。
"id": "abcd.inst.sdt.gh-wer-1.anrg6ljrgo5rdtyc25lgtr2wf7iuhu2f5scwehpjjzerzpnphn3tzy4w2wjq"
とにかく、出力を次のようにすることは可能ですか?
abcd.inst.sdt.gh-wer-1.anrg6ljrgo5rdtyc25lgtr2wf7iuhu2f5scwehpjjzerzpnphn3tzy4w2wjq
使用して疲れました。
grep -oh abcd.inst abcd.txt
しかし、出力は
abcd.inst
ベストアンサー1
grep -o
一致するテキストのみを出力するので、grep -o abcd.inst
printのみのabcd.inst
解決策は正規表現を使用して出力全体をキャプチャすることです。grep -oP 'abcd.inst[^"]+'
やりたいことをします。この-P
フラグはPerlスタイルモードを有効にし、次の引用符と一致するようにモードを変更しました。これはリンクですパターンが何をするかを正確に説明するツールです。