Sascha321 12 Geschrieben 29. April 2018 Melden Teilen Geschrieben 29. April 2018 Hallo zusammen Mit dem Befehl "wmic volume get driveletter, Label" kann man sich den "DriveLetter" und "Label" der Laufwerke anzeigen lassen. Ich möchte jetzt, wenn das Label z.B. "Windows_os" heisst das er ... tut und wenn das Label "Daten" heisst, was anderes macht und wenn das Label "Backup" heisst wieder was anderes macht. Wie bekomme ich das hin? Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 29. April 2018 Melden Teilen Geschrieben 29. April 2018 (bearbeitet) vor 19 Minuten schrieb Sascha321: Wie bekomme ich das hin? Die Frage ist etwas vage. Mit welcher Script-Technologie kennst Du Dich denn genug aus? bzw Wobei genau brauchst Du da Hilfe? Wenn ich frech sien wollte, würde ich sagen: ..... mit einem Script!! Wenn ich etwas empfehlen sollte, würde ich Powershell empfehlen. bearbeitet 29. April 2018 von BOfH_666 Zitieren Link zu diesem Kommentar
Sascha321 12 Geschrieben 29. April 2018 Autor Melden Teilen Geschrieben 29. April 2018 @ECHO OFF CLS set for %%G in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do ( set Laufwerksname=wmic volume where DriveLetter^=%%G get Label /value If Laufwerksname = "Backup" ( Laufwerksbuchstabe=%%G mach was ) If Laufwerksname = "Daten" ( Laufwerksbuchstabe=%%G Mach was anderes ) If Laufwerksname = "Windows_os" ( Laufwerksbuchstabe=%%G Mach nichts ) ) So hatt eich mir das Vorgestellt, aber das klappt hinten und Vorne nicht :-( Zitieren Link zu diesem Kommentar
Sunny61 807 Geschrieben 29. April 2018 Melden Teilen Geschrieben 29. April 2018 Lass dir gleich nach deinem SET Laufwerksname mit echo das anzeigen/ausgeben, was drin ist: https://de.wikibooks.org/wiki/Batch-Programmierung:_Batch-Befehle#ECHO Und am besten gleich eine PAUSE in der nächsten Zeile einfügen. Dann bleibt die Verarbeitung an der Stelle stehen. Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 29. April 2018 Melden Teilen Geschrieben 29. April 2018 Wenn Du's doch mal mit Powershell probieren möchtest ... Get-CimInstance -ClassName CIM_LogicalDisk -OutVariable Disks switch ($Disks.VolumeName) { 'Backup' { 'Befehle für Laufwerksname "Backup"' break } 'Daten' { 'Befehle für Laufwerksname "Daten"' break } 'Windows_os' { 'Befehle für Laufwerksname "Windows_os"' break } default { 'Befehle die generell ausgeführt werden' break } } Zitieren Link zu diesem Kommentar
Sascha321 12 Geschrieben 29. April 2018 Autor Melden Teilen Geschrieben 29. April 2018 Ich will damit eine nach eine Robocopy Starten und da das Sicherungsmedium jedes mal ein anderen Buchstaben hat brauche ich den Buchstaben. Der Buchstabe wird durch den Namen des Sicherungsmedium heraus gefunden. @Sunny61 Verstehe das nicht ganz, da steht Echo ist ausgeschaltet ???? @ECHO OFF CLS for %%G in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do ( set Laufwerksname=wmic volume where DriveLetter^=%%G get Label /value echo %Laufwerksname% Pause ) Wenn ich das aber so mache, dann schreibt er mir die Buchstaben hin. @ECHO OFF CLS for %%G in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do ( set Laufwerksname=wmic volume where DriveLetter^=%%G get Label /value echo %%G Pause ) Zitieren Link zu diesem Kommentar
Sascha321 12 Geschrieben 29. April 2018 Autor Melden Teilen Geschrieben 29. April 2018 FOR /f %%a in ('wmic volume where DriveLetter^='C' get Label ^') do set "Label=%%~a" echo %Label% ) So funktioniert es auch nicht, kann mir da wirklich keiner behilflich sein`? Zitieren Link zu diesem Kommentar
Sascha321 12 Geschrieben 29. April 2018 Autor Melden Teilen Geschrieben 29. April 2018 Kann mir jemand das script machen, und was kostet es? Zitieren Link zu diesem Kommentar
Sascha321 12 Geschrieben 29. April 2018 Autor Melden Teilen Geschrieben 29. April 2018 Wieso bekomme ich bei dem "echo %DriveLabel%" keine Ausgabe, es ist doch alles vorhanden rem@echo off CLS FOR %%i IN (C D E F G) DO ( IF EXIST %%i: ( for /f "tokens=2 delims==" %%a in ('wmic volume where DriveLetter^="%%i:" get Label /value') do ( set "DriveLabel=%%a" echo %DriveLabel% ) ) ) pause Zitieren Link zu diesem Kommentar
Sunny61 807 Geschrieben 29. April 2018 Melden Teilen Geschrieben 29. April 2018 Lass doch das Echo off einfach mal weg. Probier einfach mal Stück für Stück. Erst wenn Du einen Buchstaben in der Ausgabe siehst, dann geht es weiter. Ein fertiges Script hätte für dich keinen Lerneffekt, aber genau den Lerneffekt sollst Du bekommen. Außerdem ist Scripting für einen Admin das Handwerkszeug. Falls das Laufwerk das angeschlossen wird, per USB angeschlossen ist, kann man auch mit Hilfe des USB Drive Letter Manager von Uwe Sieber https://www.uwe-sieber.de/usbdlm.html dafür sorgen, dass das LW immer den gleichen Buchstaben bekommt. vor 2 Stunden schrieb Sascha321: Wenn ich das aber so mache, dann schreibt er mir die Buchstaben hin. @ECHO OFF CLS for %%G in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do ( set Laufwerksname=wmic volume where DriveLetter^=%%G get Label /value echo %%G Pause ) So funktioniert es? Richtig? Dann hast Du doch schon den ersten Teil der Lösung. Zitieren Link zu diesem Kommentar
Sascha321 12 Geschrieben 29. April 2018 Autor Melden Teilen Geschrieben 29. April 2018 vor 47 Minuten schrieb Sascha321: Wieso bekomme ich bei dem "echo %DriveLabel%" keine Ausgabe, es ist doch alles vorhanden rem@echo off CLS FOR %%i IN (C D E F G) DO ( IF EXIST %%i: ( for /f "tokens=2 delims==" %%a in ('wmic volume where DriveLetter^="%%i:" get Label /value') do ( set "DriveLabel=%%a" echo %DriveLabel% ) ) ) pause Ich habe hier das echo off weg gemacht, und es wird auch alles richtig ausgefüllt (variablen) allerdings bekomme ich bei "echo %DriveLabel%" keine ausgabe. Lass den batch doch mal bei dir laufen, dann siehst du was ich meine. Ich habe das Gefühl man kann for schleifen beim batch nicht verschachteln Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 29. April 2018 Melden Teilen Geschrieben 29. April 2018 Warum man sich 2018 immernoch mit der kruden Syntax von Batch beschäftigt, werde ich einfach nie verstehen. Wenn Du noch eine Weile in Windows-Infrastrukturen unterwegs sein möchtest, solltest Du Dir dringend Powershell mal ansehen. Es führt bei komplexeren Aufgaben quasi kein Weg dran vorbei. Mit Batch/CMD wirst Du ziemlich schnell an Grenzen stoßen. Zitieren Link zu diesem Kommentar
Sascha321 12 Geschrieben 29. April 2018 Autor Melden Teilen Geschrieben 29. April 2018 kann man mit acronis auch powershell Skripts starten?? Zitieren Link zu diesem Kommentar
Nobbyaushb 1.475 Geschrieben 29. April 2018 Melden Teilen Geschrieben 29. April 2018 Wieso mit Acronis? Davon hast du bisher nichts geschrieben. Was genau soll denn überhaupt erreicht werden? Ggf. gibt es eine ganz andere Lösung / Ansatz.... Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 29. April 2018 Melden Teilen Geschrieben 29. April 2018 vor 16 Minuten schrieb Sascha321: kann man mit acronis auch powershell Skripts starten?? Wenn Acronis die cmd.exe starten kann, warum sollte es dann keine Powershell.exe starten können? Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.