次のように、いくつかのテキストアドレスと電子メールアドレスを含むファイルを作成します。
TEXT\n
Cc: mail1,\n
mail2,\n
mail3\n
EMPTY LINE\n
TEXT
Ccリストをbash変数にロードする必要があります:FOO = "mail1、mail2、mail3"。sed(または他のコマンド)を使用するにはどうすればよいですか?
インストールしてProcmail
、入力ファイルが例のように単一のRFC822電子メールメッセージとしてフォーマットされている場合、
FOO=$(formail -c -xCc: <file)
sed
通常、一度に 1 行だけ評価します。複数の行に一致させることができますが、それはかなり醜いです。代わりに使用することをお勧めしPerl
ます。
FOO=`perl -e 'local $/=undef; open FILE, "input.txt"; $text=<FILE>; close FILE; print "$1, $2, $3" if $text =~ /Cc: (.*?),\n (.*?),\n (.*?)\n/s;'`