[[Fabric]] #author("2018-01-10T06:52:31+00:00","default:kazuma","kazuma") *シェル・コマンドを実行する [#e64ef95e] $ fab -H ホスト名 -u ユーザー名 -- シェルコマンド $ fab -H 192.168.100.100 -u vagrant -- uname -a [192.168.100.100] Executing task '<remainder>' [192.168.100.100] run: uname -a [192.168.100.100] Login password for 'vagrant': [192.168.100.100] out: Linux vagrant.vm1 2.6.32-573.18.1.el6.x86_64 #1 SMP Tue Feb 9 22:46:17 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux [192.168.100.100] out: Done. Disconnecting from 192.168.100.100... done. *fabfileを使ってコマンド実行する [#yc4abb93] $ vim どこか適当なローカルのディレクトリ/fabfile.py from fabric.api import * def ipcheck(): run("sudo cat /var/log/httpd/access.log") $ fab -H ホスト名 -u ユーザー名 ipcheck *sudoが必要なコマンドを列挙する場合 [#z04b76a8] run("sudo ほげ")だと都度sudoパスワードを確認されるため下記のように記述する sudo("hoge") *タスクをまとめる [#i745234d] def hoge() #task1 def fuga() #task2 def HOGE() #task3 def all() hoge() fuga() HOGE() $ fab all -f fabfile.py http://qiita.com/toshihirock/items/308cad59e21cfb4372b0