Postgresql
從 stdin 上給出的轉儲中恢復 postgres 數據庫本地的腳本 - 不明確的重定向
執行此命令:
sshpass -p "pass" ssh x@1.2.3.4 "pg_dump -U foo some_db"
執行良好。它在標準輸出上返回 db 的轉儲。
然後我想恢復
new_db
基於重定向到標準輸入的轉儲psql -U foo -d new_db < `sshpass -p "pass" ssh x@1.2.3.4 "pg_dump -U foo some_db"`
我收到錯誤:
ambiguous redirect
我建議這樣做:
sshpass -p "pass" ssh x@1.2.3.4 "pg_dump -U foo some_db" | psql -U foo -d new_db
這會將 ssh 標準輸出通過管道傳輸到 psql 標準輸入。