FTP-Uploaddateien, deren Namen und Speicherorte in einer Textdatei enthalten sind

FTP-Uploaddateien, deren Namen und Speicherorte in einer Textdatei enthalten sind

Ich habe eine Textdatei mit Dateinamen und deren Pfaden, zB

liste.txt

/dirA/fileA.bin
/dirB/fileC.txt
/dirB/fileD.txt
(...and so on)

Wie kann ich diese Dateien per FTP zu einem Ziel hochladen, das bereits über die Baumstruktur verfügt, die den Quellen entspricht, z. B. Quelle, /dirA/fileA.bindie ins Ziel gehört /dirA/fileA.bin, und so weiter.

Das Folgende ist das Nächstliegende, was ich nach einer Suche gefunden habe, aber das ist nicht ganz alles.

curl -T "{/dirA/fileA.bin}" ftp://XXX/dirA --user abc:xyz

Ich bin für jede Hilfe dankbar. Vielen Dank.

Antwort1

Ein Bash-Skript würde für Sie funktionieren. Aber warum möchten Sie FTP? Wenn Sie SSH verwenden können, ist es einfacher ... So etwas wie:

#!/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"

Wenn Sie Ihren öffentlichen Schlüssel auf die Remote-Maschine exportieren, können Sie sogar ohne die anfängliche Verbindung weitermachen und rsync funktioniert über FTP. Es ist im Grunde dasselbe ...

verwandte Informationen