Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

FTP download mit Bedingung

Frage Entwicklung Batch & Shell

Mitglied: pixelraider

pixelraider (Level 1) - Jetzt verbinden

13.03.2013, aktualisiert 22:15 Uhr, 1653 Aufrufe, 3 Kommentare

An alle Spezialisten:

folgendes Szenario:

FTP-Server (Linux-System) der Dateien in nach folgendem Muster bereitstellt:
20130312143222_SQXgfa_4006559000009_39.rdy 
20130312143222_SQXgfa_4006559000009_39.csv
Ziel ist es, diese Dateien auf einen Windows-Server zu verschieben und zwar erst dann, wenn die passende RDY zur CSV vorhanden ist.

Wenn also eine CSV ohne RDYim Verzeichnis liegt, soll diese nicht transferiert werden.

Leider ist es nicht möglich, auf dem Server Software eines Drittherstellers zu installieren, also müssen die Bordmittel von Windows herhalten.

Einen normalen FTP-Transfer via ftp.txt, die die Parameter hält und dem ftp Kommandozeilen Client von Windows herzustellen ist nicht das Problem.

Es hapert daran, den passenden Dateinamen aus der mit mdir erstellten Datei zu extrahieren, zu vergleichen ob eine passende csv vorhanden ist.

Als Anhaltspunkt eine Zeile aus der mdir :
1: -rw-rw----    1 899      502           219 Mar 13 14:29 20130312143222_SQXgfa_4006559000009_39.rdy
Nach dem die Datei auf den Windows Server übertragen wurde, muss selbstverständlich auch geprüft werden, ob die ordnungsgemäß durchgeführt worden ist, bevor die Dateien (CSV bzw die entsprechende RDY) auf dem Linux-System gelöscht werden.
Mitglied: Lochkartenstanzer
13.03.2013, aktualisiert um 17:25 Uhr
Moin

Ist, sofern eine rdy-Datei vorhanden ist, auch immer eine csv-datei vorhanden?

Wenn ja, einfach die rdy-Dateien filtern, rdy durch csv erstzen und herunterladen. fertig.

Ansonsten:

  • Eine dateiliste mit den rdy-dateien erzeugen
  • daraus die endungen in csv wandeln
  • Diese liste als Lilter benutzen, um dann die csv-Dateien aus der ursprünglichen Liste herauszusuchen.

Die Implementation als cmd- oder powershell-batch sei dem TO als Übungsaufgabe üebrlassen.

lks

PS: das ganz ließe sich mit bash/gnu-tools vermulich als Einzeiler hinschreiben. Wenn Du auf der Windows-Kiste cygwin o.ä. installieren darfst sollte sich die Lösung als trivial erweisen:

wget -O - ftp://ftp-server/verzeichnis | grep -i ".rdy$" | sed -e "s:.rdy$:.csv:g" | xargs wget 
oder so ähnlich.
Bitte warten ..
Mitglied: format-c
23.03.2013 um 21:17 Uhr
Gehe ich richtig davon aus, dass auf dem Server eine CSV-Datei ohne eine RDY-Datein sein kann, aber nicht umgekehrt? Falls man sich darauf verlassen kann, dass zu jeder RDY-Datei auch eine entsprechende CSV-Datei existiert, kannst du folgendermaßen vorgehen:
Filtere die Ausgabe des Verzeichnisses mit
... | findstr /e ".rdy"
Dann kannst du mit einer for-Schleife die Liste abarbeiten.
for /f %%i in (liste.txt) do befehl %%i&befehl %%~ni.csv
Schaue dir unter "for /?" das letzte Drittel an.
Um die Liste nicht auf der Festlatte zwischenspeichern zu müssen, kannst du in der obigen for-Schleife die liste.txt durch 'befehl-zum-auflisten ^| find /e ".rdy"' ersetzen.

Gruß
format-c
Bitte warten ..
Mitglied: Lochkartenstanzer
23.03.2013 um 22:10 Uhr
Hallo format-c,

nachdem sich Pixelraider seit 10 Tagen nicht rührt, gehe ich davon aus, daß das Problem anscheinend nicht so wichtig war oder schon gelöst ist. Das wird vermutlich wieder einer der verwaisten Threads.

lks
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (14)

Frage von liquidbase zum Thema Windows Update ...

DSL, VDSL
Problem mit variernder Internetgeschwindigkeit (12)

Frage von schaurian zum Thema DSL, VDSL ...