リモート サーバーでシェル コマンドを実行するユーティリティ メソッドを Ruby で作成しています。
これが私がこれまでに持っているものです...
def exec_remotely(command)
remote_command = "ssh -t #{@config['remote_username']}@#{@config['target_server']} '#{command}'"
puts "------> Executing:"
puts " #{remote_command}"
output = `#{remote_command}`
output.lines.each do |line|
puts " #{line}"
end
end
コンソールで必要な効果は次のとおりです。
------> Executing:
ssh -t user@host.com 'ls -alh'
Connection to host.com closed.
total 8.7M
drwx------ 10 username username 4.0K Sep 5 18:11 .
drwxr-xr-x 3 root root 4.0K Aug 26 21:18 ..
-rw------- 1 username username 1.6K Sep 5 17:47 .bash_history
-rw-r--r-- 1 username username 18 Dec 2 2011 .bash_logout
-rw-r--r-- 1 username username 48 Aug 27 02:52 .bash_profile
-rw-r--r-- 1 username username 353 Aug 27 03:05 .bashrc
# etc...
しかし、私が代わりに得ているのはこれです...
------> Executing:
ssh -t user@host.com 'ls -alh'
Connection to host.com closed.
total 8.7M
drwx------ 10 username username 4.0K Sep 5 18:11 .
drwxr-xr-x 3 root root 4.0K Aug 26 21:18 ..
-rw------- 1 username username 1.6K Sep 5 17:47 .bash_history
-rw-r--r-- 1 username username 18 Dec 2 2011 .bash_logout
-rw-r--r-- 1 username username 48 Aug 27 02:52 .bash_profile
-rw-r--r-- 1 username username 353 Aug 27 03:05 .bashrc
# etc...
すべてを垂直に並べるにはどうすればよいですか? (「------>」を除いて。それは左端から始まるはずです。)