私がやりたいことは次のとおりです。
- ルートとしてログイン
su postgres
psql jumlar < database_schema.txt
これは私のコードです。ご覧のとおり、これらを段階的に実行する必要がありますが、これら 2 つの手順を 1 つのコマンドで実行することはできません。
Net::SSH.start(192.168.2.1, root, :password => "root") do |ssh|
ssh.exec! "su postgres"
ssh.exec! "psql jumlar < database_schema.txt"
ただし、これはの後には機能しませんsu postgres
。2 番目は 1 番目の後に機能しないからです。ssh.exec
いつも新しいトンネルを開いているようです。
Ruby にすべてのステップを記憶するコマンドがあるかどうかはわかりません。