Я пытаюсь загрузить кучу файлов с сервера sftp. Организация сервера следующая: существует папка в год, а в каждой годовой папке - папка в день. Каждый день есть 8 файлов, оканчивающихся на .nc
, которые я хочу скачать. Сами имена файлов слишком сумасшедшие, чтобы их отслеживать. Я пробовал несколько разных подходов, но мне не удалось дать get
правильные инструкции для получения файлов. Моя текущая версия должна иметь цикл перед подключением к sftp, чтобы я мог написать имя, а затем подключиться к sftp и скачать этот файл:
for i in `seq 1 1 366`;
do
if [ $i -lt 10 ]; then
today='00$i/*.nc'
elif [ $i -ge 10 ] && [ $i -lt 100 ]; then
today= '0$i/*.nc'
elif [ $i -ge 100 ]; then
today= '$i/*.nc'
fi
done
sshpass -p $(cat ~/Code/sftp_passwd.txt) sftp cgerlein@cygnss-sftp-1.engin.umich.edu <<EOF
cd ..
cd ..
cd /data/cygnss/products/CDR/l1/2019/
get $today /scratch/myfolder/
quit
EOF
Я не думаю, что get
нравитсяподстановочный знак там. И это может быть даже не лучшим подходом. Какие-либо предложения? Спасибо!