2016-04-19 14 views
0

Ich habe versucht, einen Weg zu finden, mget mit nur bestimmten Dateierweiterungen zu verwenden.Shell - LFTP - mehrere Erweiterungen

ich verwendet habe, folgenden Befehl ein (was ganz gut funktioniert, wenn ich *.csv verlassen)

lftp -e "set xfer:clobber true;mget $SOURCE_DIR*.{csv,txt,xls,xlsx,zip,rar};exit" -u $SOURCE_USERNAME,$SOURCE_PASSWORD $SOURCE_SERVER || exit 0

Aber kein Glück, ich Nachricht dir/*.{csv,txt,xls,xlsx,zip,rar} no files found

Versuchte Klammern hinzuzufügen

lftp -e "set xfer:clobber true;mget $SOURCE_DIR(*.{csv,txt,xls,xlsx,zip,rar});exit" -u $SOURCE_USERNAME,$SOURCE_PASSWORD $SOURCE_SERVER || exit 0

Auch kein Glück

$SOURCE_DIR hat bereits einen Schrägstrich / am Ende

Ich habe versucht, vor Ort zu testen lftp aber ich habe Probleme mit Ports auf meinem Vagrant Box zu öffnen, damit die Frage

Antwort

0

ich zu einem FTP verbinden verwaltet ohne die Notwendigkeit, Ports weiterzuleiten.

Es stellte sich heraus (ich weiß, es scheint offensichtlich) Sie für jede Erweiterung von Raum

mget $SOURCE_DIR*.csv $SOURCE_DIR*.txt

getrennt vollständigen Pfad mit dem Wildcard angeben müssen

Auch wenn eine (oder mehrere) Erweiterungen nicht gefunden die Nachricht "* .txt keine Dateien gefunden" landet im Standardfehler, was dazu geführt hat, dass ich nicht mit dem vollständigen Skript

fortfahren konnte
Verwandte Themen