2016-05-01 11 views
0

からエピソード番号を抽出する方法は、あなたがbashで、この文字列変数があるとします。bashの:文字列

filename="House Of Lies 5x02 HDTV XviD [DivxTotaL]" 

私は5x02一部を取得するために何ができますか?私は運ではgrepで試してみた

echo "$filename" > grep -c '[0-9]x[0-9]{2}' 
+0

あなたはsedまたはawkを使いたいでしょう。 –

答えて

4

あなたはgrepをして渡しているオプション-cは、選択した行の行数だけが標準出力に書き込まれ

-c間違っています。

$ echo $filename | grep -oE '[0-9]{1,2}x[0-9]{1,3}' 
5x02 

-o行の一致する部分だけを印刷します。

-E拡張正規表現

3
echo "$filename" | egrep -o '[0-9]x[0-9]{2}' 

>fileは、出力をファイルにリダイレクトします。 |cmdはそれを別のコマンドにパイプします。 -cはマッチの数をカウントしますが、これはここでは役に立ちません。 -oは一致する文字列を出力します。 {2}を使用できるようにするには、拡張正規表現を有効にする必要があります(egrep)。

関連する問題