ブログ - dovecotのデータ移行考察 その4 メール転送設定を取り出すための方法
OSで持っているアカウントは,次のように取り出せる.
先頭にアンダーバーが付いているものはシステム用アカウントなので今回は移行しないから除外する.そういった場合は,このように.
それで,詳細情報を表示したとき,XMLででてくるのでどうにか取得できないかと考えたのだけれど,xmllintとかでもなく,良いXMLパーサで良いものがないし,残念ながら何行目にkAutoForwardValueがでてくるかわからないのだけれど,単純な方法を使う事にした.
そう.grepで-nオプションを使えば行数がでる.その次の行に転送先データが入っている.
14行目にキーが入っているので,15行目にValueが入っているから,15行目だけを取り出す.
これらの部品を組み合わせれば,取り出せる!
sh-3.2# dscl . -list /Users|head -n 3
_amavisd
_appowner
_appserver
sh-3.2#
sh-3.2# dscl . -list /Users|grep -v "^_"|head -n 3
abuse
access
amavisd
sh-3.2#
sh-3.2# dscl . -read /Users/mobileone|grep -n kAutoForwardValue
14: <key>kAutoForwardValue</key>
sh-3.2#
sh-3.2# dscl . -read /Users/emobile|head -n 15|tail -n 1
<string>mobiletow@ujp..jp</string>
sh-3.2#
これらの部品を組み合わせれば,取り出せる!