1

データ/URL(この場合はsomeurl)をタグ内に含むファイルから抽出しようとしています。

xyz>someurl>xyz

awkまたはのどちらを使用してもかまいませんsed

4

3 に答える 3

8

最良の、最も簡単な方法は次のとおりだと思いますcut

$ echo "xyz>someurl>xyz" | cut -d'>' -f2
someurl

次のようにawk実行できます。

$ echo "xyz>someurl>xyz" | awk  'BEGIN { FS = ">" } ; { print $2 }'
someurl

そして withsedはもう少しトリッキーです:

$ echo "xyz>someurl>xyz" | sed 's/\(.*\)>\(.*\)>\(.*\)/\2/g'
someurl

のブロックを取得something1<something2<something3し、2 番目のブロックを出力します。

于 2013-05-29T13:02:29.043 に答える
0

grep は以下のものを抽出するために生まれました:

kent$  echo "xyz>someurl>xyz"|grep -Po '>\K[^>]*(?=>)'
someurl

もちろん、爆弾でハエを殺すこともできます。

kent$  echo "xyz>someurl>xyz"|awk -F\> '$0=$2'
someurl
于 2013-05-29T13:28:14.743 に答える
0

grepオプションをサポートしている場合Pは、先読みと後読みの正規表現を使用してurl.

$ echo "xyz>someurl>xyz" | grep -oP '(?<=xyz>).*(?=>xyz)'
someurl

これは、最終的な答えではなく、開始するための単なるサンプルです。

于 2013-05-29T13:32:23.390 に答える