У меня есть текстовый файл с именами файлов и их путями, например
список.txt
/dirA/fileA.bin
/dirB/fileC.txt
/dirB/fileD.txt
(...and so on)
Как я могу загрузить эти файлы через FTP в место назначения, которое уже имеет древовидную структуру, соответствующую источникам, например, источник, /dirA/fileA.bin
который следует в место назначения /dirA/fileA.bin
, и т. д.?
Самое близкое, что я нашел после поиска, это следующее, но это не совсем то.
curl -T "{/dirA/fileA.bin}" ftp://XXX/dirA --user abc:xyz
Любая помощь будет оценена по достоинству. Большое спасибо.
решение1
Какой-нибудь скрипт bash подойдет. Но зачем вам FTP? Если можно использовать SSH, то проще... Что-то вроде этого:
#!/bin/bash
input="/path/to/txt/file"
spawn ssh user@remotecomputer
expect "password:"
sleep 1
send "<your password>\r"
while IFS= read -r line
do
rsync -v -e ssh $line user@remotecomputer:/remotepath
done < "$input"
Если вы экспортируете свой открытый ключ на удаленную машину, вы можете даже пройти без начального соединения и rsync работает через ftp. Это в принципе то же самое...