GNU bash、バージョン 4.2.20(1)-release (x86_64-pc-linux-gnu) を使用しています。変数にダンプした音楽ファイルのリストがあります: $pltemp
.
例:
/Music/New/2010s/2011;Ziggy Marley;Reggae In My Head
上記の Master-Music-List.txt の 3 番目のフィールドを grep したいのですが、2 番目のフィールドに対して別の grep を続けます。両方が一致した場合は、else echo "Not Matched" を出力します。
したがって、上記は曲のタイトル (Reggae In My Head) を検索し、成功のために同じ行にアーティスト「Shaggy」があることを確認します。
これまでのところ、非変数の grep は成功しています。
$ grep -i -w -E 'shaggy.*angel' Master-Music-MM-Playlist.m3u
$ if ! grep Shaggy Master-Music-MM-Playlist.m3u ; then echo "Not Found"; fi
$ grep -i -w Angel Master-Music-MM-Playlist.m3u | grep -i -w shaggy
処理する「全体」リストを最適に構築する方法がわかりません。
- これを一行でやりたい。
これを使用して、リストを変数にダンプしました$pltemp
...
オリジナル:\Music\New\2010s\2011\Ziggy Marley - Reggae In My Head.mp3
$ pltemp="$(cat Reggae.m3u | sed -e 's/\(.*\)\\/\1;/' -e 's/\(.*\)\ -\ /\1;/' -e 's/\\/\//g' -e 's/\\/\//g' -e 's/.mp3//')"