expectコマンドを使って定期的にrsyncする

MacvirtualboxCentOS環境で共有したかっただけ


そもそもvirtualboxの共有使えば良い気がするが…
expectで色々自動化できそうだ、sleep 300で5分毎に実行している。

あえてターミナルの枠を取る事で動いている事を目視でき忘却も阻止できる
シェルと同階層に作る事によって共有場所を目視できる。

rsyncのためのサーバーやらパスワードファイルやらが煩雑だったので解消できた。

FILENAME="共有ファイル名"

GUEST="root@192.168.xx.xx"
PASS="~/work/Project/設置してあるファイル"
PW="password"

#CentOS->Mac
expect -c "
    spawn rsync -avu ${GUEST}:${PASS}/${FILENAME} `pwd`
    expect \"${GUEST}'s password:\"
    sleep 1
    send \"${PW}\n\"
    interact
    "

#Mac->CcentOS
expect -c "
    spawn rsync -auv `pwd`/${FILENAME} ${GUEST}:${PASS}
    expect \"${GUEST}'s password:\"
    sleep 1
    send \"${PW}\n\"
    interact
    "

sleep 300
sh ${0}

既存のファイルがあるとファイルのユーザーの関係でエラーが出るので注意 あくまでvirtualboxからの共有用

geektrainee.hatenablog.jp

d.hatena.ne.jp

orebibou.com

主流になりそうな、クジラHUBでのデプロイ方法覚えとかないといけないな;;