0

我需要将几个文件复制到远程服务器。

for database in `mysql -Bse"show databases" | grep '^us' `
do

time scp $database.gz gs://tbl_name/ &

done

我使用&在后台推送进程,以便脚本可以继续处理下一个文件。问题是由于网络问题,10 个文件中有 1 个无法传输。但我无法检查返回码,因此不知道哪些文件失败了。

4

1 回答 1

1

您可以等待特定进程并从中获取状态:

cmd &
pid=$!
cmd2 &
pid2=$!
wait $pid || echo cmd failed >&2
wait $pid2 || echo cmd2 failed >&2
于 2012-07-06T15:23:35.097 回答