これを使用している時点で、二重引用符で囲まれた文字列をgrepしようとしています
grep user file | grep -e "[\'\"]"
これにより、必要なファイルのセクションが表示され、二重引用符が強調表示されますが、二重引用符で囲まれることはありません。
これを試してみてください:
$ cat aaaa
foo"bar"base
$ grep -oP '"\K[^"\047]+(?=["\047])' aaaa
bar
高度な正規表現手法を使用します。
引用符も必要な場合:
$ grep -Eo '["\047].*["\047]'
"bar"
ノート :
\047
一重引用符の8進ASCII表現です
$ cat aaaa
foo"bar"base
$ grep -o '"[^"]\+"'
"bar"
試す:
grep "Test" /tmp/junk | tr '"' ' '
これにより、grepの出力から引用符が削除されます
または、次のことを試すことができます。
grep "Test" /tmp/junk | cut -d '"' -f 2
これは、引用符を区切り文字として使用します。選択するフィールドを指定するだけです。これにより、必要な情報を選択できます。
これは私のために働いた。これにより、二重引用符を含むデータも出力されます。
grep -o '"[^"]\+"' file.txt
二重引用符なしで印刷する場合は、grep出力をsedコマンドにパイプする必要があります。
grep -o '"[^"]\+"' file.txt | sed 's/"//g'