Top-Themen

Aktuelle Themen (A bis Z)

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

gelöst Problem beim verschieben

Mitglied: mocca-kamil

mocca-kamil (Level 1) - Jetzt verbinden

17.09.2009, aktualisiert 12:10 Uhr, 3740 Aufrufe, 9 Kommentare

Ich will dateien mit einer bestimmten Endung in einen Unterordner verschieben.

Hi Leute,

ich hab folgendes Problem.

Mit einem Befehl will ich ein Programm ausführen an den pdf-dateien im Ordner.
Das klappt auch und ist super dupi.
Allerdings will ich anschließend die Dateien in einen "\temp" unterordner verschieben.

Ich hab es versucht in Anlehung an diese Frage zu erstellen:
Batch -Dateien verschieben, Ordner löschen
allerdings klappt es bei mir nicht


Meine Zeile wäre folgende:

for %i in (\*_stamped.pdf) do @Move "%i\*_stamped.pdf" &rd "%i\temp"


Da ich auch ein Anfänger in Sachen Batch bin hab ich zudem eh noch paar Fragen.
nach move kommt %i was ja schön und gut ist und danach kommt
nach dem "&rd" nochmals ein %i weshalb den das?
Ich weiss...bestimmt eine Mega anfängerfrage aber ich hoffe doch ich krieg sie beantwortet

Schönen Tag noch und ich hoffe auf eine baldige Antwort, ich verzweifel hier fast...
Mitglied: Biber
17.09.2009 um 12:07 Uhr
Moin mocca-kamil,

willkommen im Forum.

Um dich mit den verschiedenen FOR-Varianten vertraut zu machen ist es das Sinnvollste, du spielst das ganze vorher am CMD-Prompt durch und ersetzt dabei den eigentlich auszuführenden Befehl (in deinem Fall "move") durch ein "@echo auszuführenderBefehl".

Öffne also ein CMD-Fenster und spiel deinen Befehl
01.
for %i in (\*_stamped.pdf) do @echo move "%i\*_stamped.pdf" ^&rd "%i\temp"
...am CMD-Prompt durch.
Dann siehst Du, an welcher Stelle das %i durch was ersetzt wird.
[Anmerkung: das "&" habe ich als "^&" maskiert, damit es auch nur angezeigt wird.]

Stöbere nebenbei in der Hilfe zu FOR (For/?).

Wenn denn dann die ersten Aha-Effekte da waren, dann poste die Rest-Fragen und wir klären den Rest.

Solange Du gar kein Verständnis dafür hast, was da passiert, solange hat es wenig Zweck, Dir eine funktionierende Zeile zu posten - das kanst Du dann niemals warten und pflegen.

Grüße
Biber
Bitte warten ..
Mitglied: mocca-kamil
17.09.2009 um 13:26 Uhr
Mahlzeit Biber,


vielen Dank für die zügige Antwort!!

Ich hab jetzt allerdings folgendes Problem.
Wenn ich jetzt eintippe:
for %i in (\*_stamped.pdf) do @echo move "%~i*_stamped.pdf" &rd "%~pitemp"

erhalte ich "move.... " soweit...passt es!

wenn ich allerdings das @echo weglasse erhalte ich folgende Fehlermeldung:
"Dateiname exisitert bereits, oder die Datei konnte nicht gefunden werden"

Ich bin schier am verzeifeln daran. Was hab ich den jetzt daran falsch gemacht?
Wieso klappt es mit @echo?

Kann mir da jemand helfen`?
Bitte warten ..
Mitglied: Biber
17.09.2009 um 13:47 Uhr
Moin mocca-kamil,


Wenn ich es richtig sehe, dann würdest du bei einer gefundenen Datei \xy_stamped.pdf ein 'move "\xy_stamped.pdf*stamped.pdf' erzeugen.

Und was Du brauchst, ist doch nur ein 'move "\xy_stamped.pdf" ' --> also ein 'move "%~i" <nachZiel>'.
Und lass erstmal dieses "rd whatever" weg. Da sind wir noch nicht.

Grüße
Biber
Bitte warten ..
Mitglied: pieh-ejdsch
18.09.2009 um 05:37 Uhr
moin mocca-kamil,
@Biber
ja verkorkste dateinamen sind schuld und das fehlende Ziel für den MOVE

findet der MOVE etwa das Übergeordnete Verzeichnis nicht?....In welchen Verzeichnis bist Du im CMD

for %i in (\*_stamped.pdf) do @Move "%i\*_stamped.pdf" &rd "%i\temp"
so wie ich es verstanden habe willst Du die *_stamped .pdf aus dem Übergeordneten Ordner in den Aktuellen holen..... laut Befehl...
Bist Du also schon im temp drin? ... auf der CMD
Allerdings will ich anschließend die Dateien in einen "\temp" unterordner verschieben.
hier schreibst Du das Du die files reinschieben möchtetst also würdest Du Dich hier wiederum nicht im nicht im temp befinden.
dazu brauchst Du doch aber kein RD ...wenn Du diese files da reinschieben möchtest. RD löscht das Verzeichnis...

wenn Du im temp drin bist - dann mach mal so.. vllt geht das obwohl es eigentlich kürzer auch gehen müsste.

01.
for %i in (\*_stamped.pdf) do @move "%~fi" "%~dpitemp\%~nxi"
Gruß Phil
Bitte warten ..
Mitglied: mocca-kamil
21.09.2009 um 12:08 Uhr
Hallöle Phil,

ich befinde mich in dem jeweiligen Ordner und will die Dateien in den Unterordner schieben.
Der Befehl ist soweit super und klappt aber trotzdem vielen Dank.

Habe allerdings jetzt ein anderes Problem!

Ich lass ja ein Programm über die PDF-Dateien laufen und bisher hat es immer gut geklappt wenn ich es getestet habe mit 5-10 PDFs.
Allerdings wenn ich jetzt 100 oder mehr habe läuft das Programm über alle PDFs mehrmals drüber wie kann ich den den Befehl

for %i in (*.pdf) do pdstamp stamp.txt %i %~ni_stamped.pdf

so umschreiben das er nur jeweils einmal pro pdf läuft. (einmal über die .pdf und es wird eine mit dem ende _stamped.pdf erzeugt).
Kann mir da jemand helfen?

Grüßle Kamil
Bitte warten ..
Mitglied: pieh-ejdsch
21.09.2009 um 13:03 Uhr
normal durchläuft die Schleife ja nur einmal alle Dateien mit der Extension .pdf wieso dann mehrere Durchläufe, es sei denn die dateien sind noch nicht verschoben gewesen wenn Du die zeile nochmals eingibst.

for %i in (*.pdf) do pdstamp stamp.txt %i %~ni_stamped.pdf&&move %~ni_stamped.pdf temp
Bitte warten ..
Mitglied: Biber
21.09.2009 um 13:06 Uhr
Moin Kamil,

das Problem kannst Du dadurch umgehen, dass Du die anfänglich vorhandenene DIR-Liste *.pdf in eine Textdatei schreibst und dann diese Textdatei mit der FOR-Anweisung durchnudelst.

Beispiel (am CMDprompt):
01.
Dir /b [D:\einVerzeichnis\]*.pdf |findstr /v /i "_stamped.pdf">%temp%\ungestamptePDFs.txt 
02.
FOR /F "delims=" %i in (%temp%\ungestamptePDFs.txt) do ....[wie bisher]
Die zusätzliche FindStr-Einschränkung ist optional... hilft nur dagegen, dass aus einer bereits liegengebliebenen *.pdf-Datei eine xy_stamped_stamped_stamped.pdf wird.

Grüße
Biber
Bitte warten ..
Mitglied: pieh-ejdsch
21.09.2009 um 13:13 Uhr
@ Biber
ich denke die forschleife durchläuft das aktuelle Verzeichnis einmal und gibt das ergebnis dann nacheinander aus. Ich habs grad probiert am promt mit

for %i in (*.txt) do @echo %i>"z%i"

es wird jede Textdatei nur einmal mit dem Text des Namens der Textdatei als zname.txt gespeichert...

wenn es anders sein würde hätte ich ja eine endlosschleife..

also brauchst Du auch keine Speicherung in eine txt
[edit]
achso für die liegengebliebenen gestampten... aber da könntest Du das finstr doch gleich in die Schleife einsetzen...
da ja die datei eh nur temporär gebraucht werden würde
[/edit]



Gruß Phil
Bitte warten ..
Mitglied: mocca-kamil
21.09.2009 um 13:20 Uhr
man o man... ihr jungs seit echt super!
Problem ist gelöst, vielen Dank!!


Grüßle mocca
Bitte warten ..
Ähnliche Inhalte
VB for Applications

VBA-Excel Tabellen verschieben bzw splitten problem

gelöst Frage von SpikeeeVB for Applications8 Kommentare

Hallo Liebe Gemeinde! Ich bin relativer Neuling in VBA Programmierung, versuche mich mit meinem Kollegen aber gerade an einer ...

Windows Server

WSUSDB verschieben

gelöst Frage von fox14chWindows Server10 Kommentare

Hallo zusammen Mein BPA auf dem 2012R2 möchte, dass ich die WSUS-Datenbank verschiebe: Diesem Wunsch wollte ich nachkommen, und ...

Mac OS X

Problem Dateinamen mit Sonderzeichen beim verschieben von Dateien von OSX auf Windows

Frage von GrEEnbYteMac OS X5 Kommentare

Hallo mehrere Verzeichnisse sollen von OSX (xserv) auf einen Windows Server verschoben werden. Leider haben einige der Dateinamen Sonderzeichen ...

Exchange Server

Verschieben Postfächer Exchange 2010

gelöst Frage von hajoweExchange Server6 Kommentare

Hallo Forengemeinde Beim Verschieben eines Postfaches gibt es den Parameter Anzahl der beschädigten Elemente, der ist zwar einstellbar, aber ...

Neue Wissensbeiträge
Sicherheit

MikroTik-Router patchen, Schwachstelle wird ausgenutzt

Information von kgborn vor 7 StundenSicherheit

Am 23. April 2018 wurde von Mikrotik ein Security Advisory herausgegeben, welches auf eine Schwachstelle im RouterOS hinwies. Mikrotik ...

Windows 10

Microcode-Updates KB4090007, KB4091663, KB4091664, KB4091666 für Windows 10

Information von kgborn vor 14 StundenWindows 101 Kommentar

Kurze Information für Administratoren von Windows 10-Systemen, die mit neueren Intel CPUs laufen. Microsoft hat zum 23. April 2018 ...

iOS
Updates für Iphone und Co
Information von sabines vor 17 StundeniOS

Gestern abend ist iOS 11.3.1 erschienen, ein kleineres Update, dass einige Lücken schließt und "Lahmlegen" nach einem Display Tausch ...

Windows 7

Windows 7 - Server 2008 R2: Exploit für Total Meltdown verfügbar

Information von kgborn vor 2 TagenWindows 7

Kleine Information für Administratoren, die für die Updates von Windows 7 SP1 und Windows Server 2008 R2 SP1 verantwortlich ...

Heiß diskutierte Inhalte
Batch & Shell
Powershell: Im AD nach Rechnern mit bestimmten IP-Adressen suchen
gelöst Frage von Raven42Batch & Shell36 Kommentare

Hallo zusammen, ich suche nach einer Möglichkeit nach Computern im AD zu suchen , deren IP-Adresse mit 10.11.12. beginnt. ...

C und C++
Frage1 C Programmierung-Makefile Frage2 PHP-Programmierung HTTP-Fehler 404
Frage von KatalinaC und C++34 Kommentare

Hallo, ich habe 2 Fragen, die nichts miteinander zu tun haben aber mit denen ich mich gerade beschäftige: 1. ...

LAN, WAN, Wireless
Watchguard T15 VPN Einrichtung
gelöst Frage von thomasjayLAN, WAN, Wireless25 Kommentare

Hallo zusammen, wir möchten gerne über unsere Watchguard T15 einen VPN-Tunnel (Mobile VPN with IPSec) einrichten! Als Client nutzen ...

Windows Server
Alten DC entfernen
Frage von smartinoWindows Server24 Kommentare

Hallo zusammen, ich habe hier eine Umgebung übernommen und erstmal einen DCDIAG gemacht. Dabei fällt auf, daß eine ganze ...