philipp-schoene Geschrieben 12. Mai 2009 Teilen Geschrieben 12. Mai 2009 Guten Tag, Wie kann ich beim Upload von Dateien mittels FTP (Windows Kommandozeile) eine Datei umbenennen? Es soll das aktuelle Datum anhängen (in dem Format dateiname_YYYY-MM-DD) Die Datei habe ich schon auf dem Server geladen. Nur mit dem Umbennen das klappt nicht. open IP user Zugangsdaten cd / cd Pfad put Pfad/Datei rename datei datei_YYYY-MM-DD quit beim rename habe ich das Problem. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
bigvic Geschrieben 12. Mai 2009 Teilen Geschrieben 12. Mai 2009 Nur mit dem Umbennen das klappt nicht. Da meine Glaskugel gerade bei der jährlichen Inspektion ist wäre eine genauere Beschreibung was denn nicht klappt (Fehlermeldung) hilfreich. ciao, vic Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
philipp-schoene Geschrieben 12. Mai 2009 Autor Teilen Geschrieben 12. Mai 2009 Was soll ich da groß schreiben, er schreibt als Dateinamen "datei_YYYY-MM-DD" ich hätte da herne das aktuelle Datum rein. (Wie schon schon von mir beschrieben) Ist ja im dem Sinne kein Fehler, sondern ich weiß nicht, wie man das macht. Also kann ich keine weitere Fehlermeldung liefern. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
bigvic Geschrieben 12. Mai 2009 Teilen Geschrieben 12. Mai 2009 Du solltest deine Fragen genauer stellen, denn ich hatte anhand deines Posts verstanden, dass der rename an sich nicht klappt und nicht dass das "aktuelle Datum" dein Problem ist. Anyway - mir ist zumindest keine "date"-Funktion als ftp-Kommando bekannt, sondern nur die File Modification Time, welche dich aber nicht weiterbringt. > Du wirst das Datum vorher ermitteln und als Variable übergeben müssen. Hier mal ein Beispiel zum ermitteln des Datums unter Windows. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 12. Mai 2009 Teilen Geschrieben 12. Mai 2009 Warum benennst Du nicht erst die Datei um und lädst diese hoch? Aber ich gebe @vic da in allen Sachen recht Phil Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
philipp-schoene Geschrieben 13. Mai 2009 Autor Teilen Geschrieben 13. Mai 2009 Warum benennst Du nicht erst die Datei um und lädst diese hoch? Wäre sehr umständlich. > Du wirst das Datum vorher ermitteln und als Variable übergeben müssen Ich ermittle in der Batch das Datum und übergebe das dann an das FTP-Script. Dort wird aber nicht der Inhalt der Variable gesetzt. aber das Datum wird korrekt ermittelt, das habe ich getestet. die Datei wird zwar umbenannt, aber in den Variablen Namen. Also das Datum wird nicht an das script vom FTP übergeben. P.S. Ich fliege ständig aus dem Forum. Habe diesen Beitrag schon das dritte mal geschrieben. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
philipp-schoene Geschrieben 19. Mai 2009 Autor Teilen Geschrieben 19. Mai 2009 > Du wirst das Datum vorher ermitteln und als Variable übergeben müssen. Wie übergebe ich das denn? siehe oben. Habe bisher nur den Variablennamen als Dateinamen bekommen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
michaelmeier Geschrieben 19. Mai 2009 Teilen Geschrieben 19. Mai 2009 Das wäre sehr umständlich. warum das? ob es nun heißt open IP user Zugangsdaten cd / cd Pfad put Pfad/Datei rename datei datei_YYYY-MM-DD quit oder aber set jahr=%date:~-4% set monat=%date:~-7,2% set tag=%date:~-10,2% copy test.txt test%jahr%%monat%%tag%.txt open IP user Zugangsdaten cd / cd Pfad put Pfad/test%jahr%%monat%%tag%.txt quit ist doch egal. aber es kann ja sein, dass die variablenübergabe an das ftp-mopped nicht klappt. gut. warum dann nicht das eigentliche ftp-skript zur laufzeit generieren? mit anderen worden: set jahr=%date:~-4% set monat=%date:~-7,2% set tag=%date:~-10,2% echo "open IP" > batchrun.cmd echo "user Zugangsdaten" >> batchrun.cmd echo "cd /" >> batchrun.cmd echo "cd Pfad" >> batchrun.cmd echo "put Pfad\test%jahr%%monat%%tag%.txt" >> batchrun.cmd echo "quit" >> batchrun.cmd start batchrun.cmd Ich weiß: nicht schön. Aber billig. Das Prinzip sollte tun. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
philipp-schoene Geschrieben 23. Mai 2009 Autor Teilen Geschrieben 23. Mai 2009 Danke, michaelmeier, deine Idee hat mich weiter gebracht. Ich habe es hier zu Hause laufen, nun muss es auf meinem Dienstrechner zum laufen bringen. Wird aber kein Problem sein. Ich weiß dass es hier ein Windowsforum ist, aber es bezieht sich ja auf die Beiträge: Wie auswendig ist es das Script unter der Linuxshell zum laufen zu bringen? (Und als Cronjob einzurichten) Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
bigvic Geschrieben 23. Mai 2009 Teilen Geschrieben 23. Mai 2009 Wie auswendig ist es das Script unter der Linuxshell zum laufen zu bringen? (Und als Cronjob einzurichten) Wenig aufwendig, aber wenn du schon von OS zu OS hüpfst würde ich mir wir an deiner Stelle mal überlegen plattformunabhängig zu scripten. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
philipp-schoene Geschrieben 23. Mai 2009 Autor Teilen Geschrieben 23. Mai 2009 Wenig aufwendig, aber wenn du schon von OS zu OS hüpfst würde ich mir wir an deiner Stelle mal überlegen plattformunabhängig zu scripten. Wie kann man das denn Plattformunabhängig gestalten? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
bigvic Geschrieben 23. Mai 2009 Teilen Geschrieben 23. Mai 2009 Wie kann man das denn Plattformunabhängig gestalten? Spontan fällt mir Java, Perl, Python und PHP ein. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
philipp-schoene Geschrieben 23. Mai 2009 Autor Teilen Geschrieben 23. Mai 2009 ...davon beherrsche ich nur PHP mehr oder weniger gut. Es ist so, dass die Windowsrechner möglichst auch keine Dienste im Hintergrund laufen haben sollten, die sie nur ab und an brauchen um das PHP-Script laufen zu lassen. (Ich denke an Apache, da ich damit PHP nur eingesetzt habe.) Denn die Rechner sind teilweise nicht die schnellsten und werden auch als Arbeitsplatzrechner benutzt. Die andere Seite, die du jetzt wahrscheinlich meinst, kenne ich von PHP nicht. das das script nicht ständig geändert werden soll, wäre es nicht so tragisch, wenn ich die anpassen müsste. Würdet ihr mir hier sagen, wie ich das Script für Linux schreiben müsste und wie ich es dann einbinde? Oder muss ich mich dann ans Linuxforum wenden? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 23. Mai 2009 Teilen Geschrieben 23. Mai 2009 Es ist so, dass die Windowsrechner möglichst auch keine Dienste im Hintergrund laufen haben sollten, die sie nur ab und an brauchen um das PHP-Script laufen zu lassen. (Ich denke an Apache, da ich damit PHP nur eingesetzt habe.) Du benötigst um PHP Scripte auszuführen keinen Apache! Du benötigst nur den Interpreter. Apache selbst hat diesen auch nicht on-board, sondern ruft ihn anhand des Mimetyps auf. Bitte mach Dich diesbezüglich einmal firm. Du benötigst ebenfalls für Python und Java entsprechende Interpreter. Wenn Du aber crossplattform die Anwendung haben willst, aber zusätzlich keinen Interpreter installieren möchtest, dann bliebe Dir noch die Möglichkeit C++ mit QT als eigenständige kompilierte Anwendung. QT bietet passende Netzwerkfunktionen, um z.B. FTP anzusteuern. Du musst den Code dann nur einmalig für jedes System kompilieren Zu Linux: man ftp und BASH Programming - Introduction HOW-TO Phil Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.