2016-07-15 43 views
0

我正在使用s3cmd從可公開訪問的s3存儲桶(s3://cgl-rnaseq-recompute-fixed)中將約11000個文件傳輸到我的EC2容器。我使用下面的命令:運行s3cmd在後臺獲取

for i in $(cat tcga-manifest); do s3cmd get --requester-pays $i; done

其中tcga-manifest是文件列表的文件獲得:

head -n3 tcga-manifest 

s3://cgl-rnaseq-recompute-fixed/tcga/00065a62-5e18-4223-a884-12fca053a109.tar.gz 
s3://cgl-rnaseq-recompute-fixed/tcga/0009f27d-a053-49b0-a030-ba9c1469224f.tar.gz 
s3://cgl-rnaseq-recompute-fixed/tcga/000f476b-7d55-4fd1-8f72-622ab00e009b.tar.gz 
s3://cgl-rnaseq-recompute-fixed/tcga/001313a7-fbd7-4a9a-a961-50c7433338e7.tar.gz 

不過,我想在後臺執行,這樣運行get命令當我註銷EC2容器時,它仍然繼續運行。另外,因爲我正在下載大量文件,所以ssh連接斷開。我試着用&沒有工作:

for i in $(cat tcga-manifest); do s3cmd get --requester-pays $i; done &

我怎麼能運行在EC2容器的背景和註銷的s3cmd get命令?

謝謝!

回答

1

把你的腳本文件,並與

nohup bash <yourscript> & 

運行它,讓你的腳本來運行你的會話終止後。