我需要從一個服務器遷移文件的數量爲S3的一些要求:當連接中斷 bash腳本里面AWS CLI命令無法找到文件
- 保存傳輸進度,下次運行必須與非上傳的文件繼續
- 運行的服務 - TODO
所以這是我,這是不完全的,因爲我在與運行命令時,定位文件的問題從機智hin腳本,但命令工作原始運行時。
如何讓腳本從這個腳本中找到$ source文件?另外,有沒有更好的方法來做到這一點?
命令:
aws s3 cp '/var/www/files/folder/file1.mp4' 's3://s3-public/folder/file1.mp4'
錯誤:
script.sh: line 20: aws s3 cp '/var/www/files/folder/file1.mp4' 's3://s3-public/folder/file1.mp4': No such file or directory
代碼:
#!/bin/bash
aws_bucket='s3://s3-public/'
home='/home/user/'
files='/var/www/files/'
input="${home}videos_list.txt"
output="${home}videos_done.txt"
videos_list='()'
videos_done='()'
arrays_hydrate() {
mapfile -t videos_list < "$input"
mapfile -t videos_done < "$output"
}
aws_init() {
for index in "${!videos_list[@]}"
do
source="${videos_list[$index]}"
destination=$(echo "${videos_list[$index]}" | sed -e "s#^$files##")
length="${#source}"
if [ "$length" -ne "0" ]; then
command="aws s3 cp '${source}' '${aws_bucket}${destination}'"
echo "$command"
$("$command") &
fi
done
}
init() {
arrays_hydrate
aws_init
}
init
exit 0
@ruakh,關於你的編輯歷史的問題。 Rev.2中的評論是錯誤的,或者這篇文章是否應該清理一下? – HelpNeeder
我回滾了我的編輯,因爲代碼轉儲的*部分*是必要的,這樣才能使問題變得有意義。但是你仍然應該按照https://stackoverflow.com/help/mcve編輯問題;你發佈了比相關更多的代碼。 – ruakh