2016-08-11 3 views
0

Also fragte mich mein Kollege, ob er eine Datei für ihn erstellen würde, die die Datei (in meinem Fall ZIP) vom Netzwerkordner in einen anderen Netzwerkordner verschieben würde. Mitarbeiter verwenden dieses Stapelscript von Zeit zu Zeit auf seinem Thumb-Flash-Laufwerk.Batch - Wie finde ich einen Ordner, wenn der Pfad nicht bekannt ist

Jede Art und Weise, ich habe meine Batch-Skript bekommt, dies zu tun:

  1. Zur \ folder1 \ Archiv.
  2. move "\\folder1\archive\file.zip" "\\###.###.#.#\Newfolder\Archive"

Nun, ich habe ein Problem. Wenn mein Kollege dieses Skript auf anderen Computern verwendet, funktioniert der Pfad zur ZIP-Datei nicht. Das bedeutet, dass ich irgendwie den Weg finden muss.

Dies ist, wie Pfad auf anderen Computern ändern:

move "\" ein anderes Verzeichnis "\ Archiv \ file.zip" "\ ### ### # # \ Newfolder \ Archive"...

Also meine Frage ist, wie finde ich den Pfad zu "einem anderen Ordner"?

+0

'move' kann eine Datei nicht auf eine andere Festplatte verschieben (weil die Datei selbst nicht berührt wird, sondern nur die Dateizuordnungstabelle geändert wird). Verwenden Sie stattdessen 'copy' oder' xcopy' und 'del'. – Stephan

+0

Könnten Sie sich bitte diese Bildschirme ansehen? Vielleicht bin ich dumm oder dumm. aber ich kann wirklich nicht verstehen warum genau ich nicht bewegen kann? Es sieht gut aus für mich. [link] (https://postimg.org/gallery/111p3kuqu/96410afa/) – Vairis

+0

uhm - sorry, ich verwirrt 'move' mit' ren'. Du hast recht, du kannst 'move' hier verwenden. – Stephan

Antwort

1

Erstens. UNC Dateipfade sind \\servername\sharename\folder\file.ext, so dass Ihre Bewegung nicht funktioniert. Andere Dateipfade sind Drive:\folder\file.ext und relative Pfade \subfolderofcurrentfolder\file.ext.

Dir c:\filename.ext /s 

sucht nach einer Datei. Antwort erhalten

+0

Hey, ich habe eine neue Batchdatei erstellt und den Pfad getestet, den ich erwähnt habe. Alles funktionierte (Von Newfolder meinte ich Sharename), aber sagte mir, dass ich keinen Zugang habe. Ich denke Skript muss als Admin ausgeführt werden. Aber das ist nicht der Grund, warum ich diesen Kommentar schreiben wollte. Ich wollte dich fragen, kannst du bitte den Code erklären, den du unten hinzugefügt hast? Wie füge ich es dem Code hinzu, damit es nach dem richtigen Freigabenamen sucht? (Ich bin neu bei Batch Scripting). – Vairis

+0

Ok, also habe ich herausgefunden, wie dieser Befehl funktioniert, aber wichtige Frage ist hier, Wie kann ich Ergebnisse in alle cd, move, etc. Befehle analysieren? – Vairis

+0

Relative Pfade, die mit einem einzelnen umgekehrten Schrägstrich beginnen, sind relativ zu __root des aktuellen Laufwerks__ und __NOT__ relativ zu __current directory__. Probieren Sie es in einem Eingabeaufforderungsfenster mit 'cd/D"% windir% \ temp "' aus und führen Sie als nächstes 'cd \ Windows' oder 'cd" \ program files "aus und Sie werden in der Verzeichnisstruktur in Windows eine Ebene höher sein Verzeichnis oder in Programmdateien Verzeichnis auf demselben Laufwerk. Ein relativer Pfad für eine Datei oder einen Ordner im aktuellen Verzeichnis oder einem seiner Unterverzeichnisse beginnt entweder mit dem Datei-/Ordnernamen oder mit ''. \ '' Und '.. \' 'verweist auf das übergeordnete Verzeichnis des aktuellen Verzeichnisses. – Mofi

Verwandte Themen