はじめに
スタブ作成のために必要だったので、ローカルコマンドのように動作する、しかし、実際にはリモートでのコマンド結果を出力するコマンドが欲しくて作成しました。
環境
OSX El Capitan
使い方
ソースをlsをいうファイル名で保存。
chmod +x lsで実行権限を付与。
あとはlsするだけ。
実装
#!/usr/bin/env python2.7
# -*- coding: utf-8 -*-
import sys
import os
from subprocess import call
argvs = sys.argv
param_hostname = '1.2.3.4'
param_username = 'docker'
param_port = '60000'
param_command = os.path.basename(argvs[0])
param_command_param = ' '.join(argvs[1:])
cmd = '/usr/bin/ssh -l %s -p %s %s %s %s' % (
param_username, str(param_port), param_hostname, param_command, param_command_param)
call( cmd.strip().split(' ') )
結果
butada-mac:remote_exec_like_a_local butada$ ./ls -l
参考
特になし