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
GELÖST

Datei im mehrere Order verschieben

Frage Entwicklung Batch & Shell

Mitglied: Mario76

Mario76 (Level 1) - Jetzt verbinden

05.11.2014, aktualisiert 10.11.2014, 856 Aufrufe, 11 Kommentare, 1 Danke

Hallo zusammen,

ich bin auf der Suche nach einem Batchbefehl, der eine Datei in einen/mehrere Ordner kopieren soll wenn sie fehlt. Alternativ (wenn sie fehlt weglassen und) einfach überschreibt.

Name der Datei = MySql.Data.dll
Mögliche Ordnernamen = {AAFFFB64-6E42-4658-9383-E08EC53B3A48}; {AAFFFB64-6E42-4658-9383-E08EC53B3A48}3; {AAFFFB64-6E42-4658-9383-E08EC53B3A48}6 ... usw.
Der String zwischen den geschweiften Klammern ist immer gleich, jedoch kann es sein, dass eine Zahl (beliebig) hinten dran gehangen wird.

72ed514aa4f75d75184af5e8adc6500b - Klicke auf das Bild, um es zu vergrößern

So funktioniert es für jeweils einen Ordner:
copy \\Server1\alle\TB\DateiFuerAddIn\MySql.Data.dll" "%temp%\..\SWX\EPDM\Plugins\vault\{AAFFFB64-6E42-4658-9383-E08EC53B3A48}\MySql.Data.dll"
pause


und...

copy \\Server1\alle\TB\DateiFuerAddIn\MySql.Data.dll" "%temp%\..\SWX\EPDM\Plugins\vault\{AAFFFB64-6E42-4658-9383-E08EC53B3A48}8\MySql.Data.dll"
pause


Auf die Zahlen am Ende habe ich leider keinen Einfluss da es scheint, dass diese willkürlich angelegt werden.


Ich habe schon ziemlich viel herumprobiert, komme aber leider nicht zur Lösung...

So wäre es für mich logisch gewesen:

copy "\\Server1\alle\TB\DateiFuerAddIn\MySql.Data.dll" "%temp%\..\SWX\EPDM\Plugins\vault\ | find "{AAFFFB64-6E42-4658-9383-E08EC53B3A48}" | MySql.Data.dll"
pause

... leider jedoch nicht für die Batch-Datei.

Ich hoffe mir kann hier jemand helfen?!

Vielen Dank schon mal im Voraus!

Gruß
Mario
Mitglied: colinardo
05.11.2014, aktualisiert 06.11.2014
Hallo Mario,
z.B. so
01.
@echo off & setlocal 
02.
set "ordner=%LOCALAPPDATA%\SWX\EPDM\Plugins\vault" 
03.
for /f "delims=" %%a in ('dir /b /AD "%ordner%\{AAFFFB64-6E42-4658-9383-E08EC53B3A48}*" 2^>nul') DO copy "\\Server1\alle\TB\DateiFuerAddIn\MySql.Data.dll" "%ordner%\%%a"
Grüße Uwe
Bitte warten ..
Mitglied: Mario76
05.11.2014 um 14:37 Uhr
Hallo Uwe,

das Konsolenfenster poppt kurz auf aber leider geschieht nichts.

Gruß
Mario
Bitte warten ..
Mitglied: colinardo
05.11.2014, aktualisiert um 14:45 Uhr
Zitat von Mario76:
das Konsolenfenster poppt kurz auf aber leider geschieht nichts.
na die Pfadangabe für den Ordner musst du ja vermutlich noch korrigieren
%temp%\..\SWX\EPDM\Plugins\vault
Bitte warten ..
Mitglied: Mario76
05.11.2014 um 14:50 Uhr
... scheinbar bin ich zu blöd...
Wo soll ich den denn noch korrigieren?
Bitte warten ..
Mitglied: colinardo
05.11.2014 um 14:58 Uhr
Also hier läuft die Batch ...
Öffne mal manuell eine Konsole, entferne mal für den Test das @echo off & setlocal und führe die Batch dann aus, dann siehst du was bei dir nicht läuft ...
Bitte warten ..
Mitglied: Mario76
05.11.2014 um 16:33 Uhr
Nee, nee, nee...

%temp%\..\SWX\EPDM\Plugins\vault

öffnet unter Windows genau diesen Pfad:

C:\Users\Mario\AppData\Local\SWX\EPDM\Plugins\vault\

So soll es ja auch sein. Da kann ich nichts mehr korrigieren. Tut mir ja leid, aber ich taste mich ja gerade erst an das Thema ran. Wenn Du einen konkreten Hinweis hast warum das nicht funktioniert dann wäre es schön diesen zu lesen.
Bitte warten ..
Mitglied: colinardo
05.11.2014, aktualisiert um 19:16 Uhr
C:\Users\Mario\AppData\Local\SWX\EPDM\Plugins\vault\
OK, da hatte ich was missinterpretiert, sorry.
Hab's mal hierdurch ersetzt: "%LOCALAPPDATA%\SWX\EPDM\Plugins\vault" das ist zuverlässiger, wenn auf einem System das Temporäre Verzeichnis auf einen anderen Ordner konfiguriert wurde.
Zitat von Mario76:
Wenn Du einen konkreten Hinweis hast warum das nicht funktioniert dann wäre es schön diesen zu lesen.
habe ich dir im letzten Post geschrieben, lass es mal manuell in einer Konsole ausführen (ohne die erste Zeile @echo off) dann siehst du eventuelle Fehlermeldungen. Habe die Batch hier getestet und sie macht hier was du wolltest.

Grüße Uwe
Bitte warten ..
Mitglied: Mario76
06.11.2014 um 08:52 Uhr
Guten Morgen Uwe,

habe den Befehl von Hand in die Konsole eingetippt und ausgeführt... (vielen dank für den Tip %LOCALAPPDATA%)

Resultat:
Er springt ohne Aktion in "C:\Users\Mario>"

Ich habe den Befehl geändert in:

copy "\\Server1\alle\TB\DateiFuerAddIn\MySql.Data.dll" "%LOCALAPPDATA%\SWX\EPDM\Plugins\vault\{AAFFFB64-6E42-4658-9383-E08EC53B3A48}6"\MySql.Data.dll"

Resultat.
Er kopiert die Datei in den Ordner "{AAFFFB64-6E42-4658-9383-E08EC53B3A48}6"

Ich geb auf...

Trotzdem vielen Dank für deine Geduld!

Gruß
Mario
Bitte warten ..
Mitglied: colinardo
LÖSUNG 06.11.2014, aktualisiert 10.11.2014
Nein du darfst die einzelnen Zeilen so nicht manuell eintippen, für diesen Fall müsstest du die Laufvariable %%a an beiden Stellen durch %a ersetzen! Du musst die Batchdatei wie oben geschrieben ändern und dann diese manuell in der Konsole starten mit deinebatch.bat, damit du für den Fall der Fälle die Fehler sehen kannst ohne das sich deine Konsole direkt schließt.

Also speichere sie mal folgendermaßen ab, führe sie erneut aus, und poste hier die Ausgaben aus deiner Konsole, damit wir das zu einem Abschluss bringen können.
01.
set "ordner=%LOCALAPPDATA%\SWX\EPDM\Plugins\vault" 
02.
for /f "delims=" %%a in ('dir /b /AD "%ordner%\{AAFFFB64-6E42-4658-9383-E08EC53B3A48}*" 2^>nul') DO copy "\\Server1\alle\TB\DateiFuerAddIn\MySql.Data.dll" "%ordner%\%%a" 
03.
pause
Vermutlich hast du nur einen Tippfehler oder es hat sich irgendwo beim Kopieren ein Fehler eingeschlichen.

Grüße Uwe
Bitte warten ..
Mitglied: Mario76
10.11.2014 um 13:13 Uhr
Mensch Uwe,

Du bist genial und ich total hohl... Ich habe das Anführungszeichen bei:

set "ordner=%LOCALAPPDATA%\...

an die falsche Stelle gesetzt.

set ordner="%LOCALAPPDATA%\...

So wie Du es geschrieben hast funktioniert es hervorragend!!!

Vielen Dank nochmal für deine Geduld

Gruß
Mario
Bitte warten ..
Mitglied: colinardo
10.11.2014 um 13:19 Uhr
Zitat von Mario76:
Du bist genial und ich total hohl... Ich habe das Anführungszeichen bei:
kann jedem mal passieren, kleine Ursache große Wirkung . Was meinst du wie oft mir das schon passiert ist. Ich habe mal einen halben Tag mit einer Problemsuche verbracht und am Ende war es so ein besch... Zeichen an der falschen Stelle

Grüße Uwe
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
VB for Applications
gelöst Excel VBA Eine oder mehrere Zellen Verschieben (2)

Frage von batchnewbie zum Thema VB for Applications ...

Batch & Shell
gelöst Datei mit MV verschieben (13)

Frage von ForgottenRealm zum Thema Batch & Shell ...

Batch & Shell
Mehrere.csv Dateien zusammenfügen zu einer Datei mit bat (4)

Frage von Piotrney zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...