0

コマンドを追加する Vagrant 用のプラグインの作成を開始しました。Command#execute 内で、:ssh_run の出力をキャプチャする必要があります。現在、出力は stdout に直接送信されます。コマンドからの小さなテスト スニペット:

with_target_vms(@argv, single_target: true) do |vm|
  vm.action(:ssh_run, ssh_run_command: 'tail -50 /var/log/boot.log')
end

誰もそれを行う方法を考えていますか? たぶん vm.action 自体が正しい方法ではないでしょうか?

事前にどうもありがとう

セバスチャン

4

1 に答える 1

1

それは速かった。@effhaa が別のチャンネルで教えてくれました。

with_target_vms(@argv, single_target: true) do |vm|
  result = []
  vm.communicate.sudo('tail -50 /var/log/boot.log') do |type, data|
    if type == :stdout
      result = data.split(/[\r\n]+/)
    end
  end
end
于 2016-02-10T11:32:54.290 に答える