[英]Bash script automation : Involve copying file from source to dest, executing script in destination and copy result from dest to surce
我需要創建一個自動化腳本,該腳本將按照給定的順序執行以下操作:
我正在使用“期望”將文件從源復制到目標。 然后,我嘗試建立到目標的ssh連接並在目標中執行腳本。 生成結果后,我將再次使用“期望”復制文件,但這一次是從目標到源。
我想知道是否有更好的方法可以做到這一點。
使用“ expect”復制文件的代碼,因為我需要為scp傳遞密碼:
#!/usr/bin/expect -f
set from [lindex $argv 0]
set to [lindex $argv 1]
set pass [lindex $argv 2]
puts "$from, $to and $pass ."
# connect via scp
spawn sudo scp -v -r $from $to
#######################
expect {
-re ".*es.*o.*" {
exp_send "yes\r"
exp_continue
}
-re ".*sword.*" {
exp_send $pass\n
}
}
interact
您的解決方案還可以。 您可以考慮使用sshfs在src機器上安裝遠程目錄,並使用命令,例如該文件在src機器上。
例:
sudo sshfs -o allow_other,nonempty user@10.1.2.3:/project /project
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.