Sascha321 12 Geschrieben 30. April 2018 Autor Melden Teilen Geschrieben 30. April 2018 Ein Kollege sichert mit Acronis seine HDD auf eine Separate interne Disk. Nun möchte er das die Sicherungen die intern abgelegt sind, noch mit Robocopy auf externe Medien sichern. Da diese immer wieder einen neuen Laufwerksbuchstaben bekommen, dachte ich mir ich frage die angeschlossenen Laufwerke nach dem Volumenamen ab und bekomme so den aktuellen Laufwerksbuchstaben von dem jeweiligen externen Medium. Eine frage habe ich trotzdem, ist das nicht möglich was ich vorhabe oder kann es hier auch keiner so richtig? Das wäre ja die Abfrage die ich brauche, nur wie bekomme ich das Ergebnis in eine Variable? und wie bekomme ich das "Label=" weg? wmic volume where DriveLetter^="C:" get Label /value Ergebnis: Label=Windows_OS Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 30. April 2018 Melden Teilen Geschrieben 30. April 2018 vor 13 Minuten schrieb Sascha321: Eine frage habe ich trotzdem, ist das nicht möglich was ich vorhabe oder kann es hier auch keiner so richtig? Es ist definitiv möglich. Es gibt mit Sicherheit auch Kollegen hier, die das mit der veralteten und von Microsoft schon seit vielen vielen Jahren nicht weiterentwickelten Technologie cmd/batch können. Ich bleibe aber bei meiner Empfehlung das mit Powershell zu machen - einfacher und leichter zu pflegen, falls nötig. Zitieren Link zu diesem Kommentar
Sascha321 12 Geschrieben 30. April 2018 Autor Melden Teilen Geschrieben 30. April 2018 Noch mal was Dieser Code hier funktioniert: @echo off for /f "tokens=2 delims==" %%a in ('wmic volume where DriveLetter^="C:" get Label /value') do ( set "DriveLabel=%%a" ) echo %DriveLabel% pause Wenn ich aber noch mal eine For Schleife darüber lege funktioniert es nicht mehr. Wer findet den Fehler? FOR %%i IN (C D E) DO ( for /f "tokens=2 delims==" %%a in ('wmic volume where DriveLetter^="%%i:" get Label /value') do ( set "DriveLabel=%%a" ) echo %DriveLabel% ) Zitieren Link zu diesem Kommentar
Sunny61 807 Geschrieben 30. April 2018 Melden Teilen Geschrieben 30. April 2018 Was spricht gegen die erste Variante? Was spricht gegen das Tool von Uwe Sieber? Zitieren Link zu diesem Kommentar
Sascha321 12 Geschrieben 30. April 2018 Autor Melden Teilen Geschrieben 30. April 2018 @BOfH_666 Ich denke mir das Du da recht hast, aber ich mag nicht noch zusätzlich für diese eine Sache Power Shell lernen. Wenn es wirklich so einfach ist, kannst Du mir dann das Skript nicht machen? Ich zahle auch dafür. Gruss Sascha @Sunny61 Dieser Ausnahme entnehme ich das ihr auch nicht genau wisst wo der Fehler liegt. Ich will keine Laufwerke fest vergeben. das führt immer wieder zu ärger. Zitieren Link zu diesem Kommentar
Sunny61 807 Geschrieben 30. April 2018 Melden Teilen Geschrieben 30. April 2018 (bearbeitet) Der Teil läuft bei mir: FOR %%i IN (D E) 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% ) ) ) If %DriveLabel% == "4GB" ( echo "Treffer" oder eben dein schlauer Code ) Da hat bei dir das zweite =-Zeichen gefehlt. Wenn Du mit dem Tool von Uwe Sieber den Buchstaben Z: vergibst, sollte das doch kein Problem darstellen, oder doch? Mit der PS und/oder mit dem Tool von Uwe Sieber hättest Du es schon längst zum Laufen bekommen. bearbeitet 30. April 2018 von Sunny61 Zitieren Link zu diesem Kommentar
Nobbyaushb 1.475 Geschrieben 30. April 2018 Melden Teilen Geschrieben 30. April 2018 vor 43 Minuten schrieb Sascha321: 1. Ich denke mir das Du da recht hast, aber ich mag nicht noch zusätzlich für diese eine Sache Power Shell lernen. Wenn es wirklich so einfach ist, kannst Du mir dann das Skript nicht machen? Ich zahle auch dafür. 2. Dieser Ausnahme entnehme ich das ihr auch nicht genau wisst wo der Fehler liegt. Ich will keine Laufwerke fest vergeben. das führt immer wieder zu ärger. Punkt 1 solltest du aber. Punkt 2 - warum das? Bei mir bekommen die gleichen Geräte auch immer den gleichen LW-Buchstaben... Und was für Probleme gibt es damit? Zitieren Link zu diesem Kommentar
Sascha321 12 Geschrieben 30. April 2018 Autor Melden Teilen Geschrieben 30. April 2018 @Sunny_61 Vielen Dank, aber bei mir läuft der Code nicht. Liegt das am Windows 10 (Admin Rechte)? Zitieren Link zu diesem Kommentar
Sunny61 807 Geschrieben 30. April 2018 Melden Teilen Geschrieben 30. April 2018 Die cmd.exe als Admin starten, aber auch das sind Grundlagen. Zitieren Link zu diesem Kommentar
Sascha321 12 Geschrieben 30. April 2018 Autor Melden Teilen Geschrieben 30. April 2018 (bearbeitet) Sorry Sunny61 Aber wieso sollte ich die Batch Datei als Administrator starten wenn ich die Abfrage als normaler User machen kann und Antwort bekomme. Wenn Du da schon über Grundlagen reden willst. Und ich nehme an Du hat den Code nicht getestet, sonst wäre dir aufgefallen, das er erst ab dem zweiten Laufwerk funktioniert. Mir aber sagen das das mit den Berechtigungen zu den Grundlagen gehört und selber nicht merken das die Abfrage mit normalen Userrechten funktioniert. Scheint dann doch wohl nicht ganz so einfach zu sein, selbst für Profis bearbeitet 30. April 2018 von Sascha321 Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 30. April 2018 Melden Teilen Geschrieben 30. April 2018 Das ist mein letzter Kommentar zu diesem Thema. Sascha321, Du bekommst hier kostenlose Hilfe für Dein Problem von (meistens) Profis, die Dir immernoch versuchen zu helfen, obwohl Du die mehrfache Empfehlung, statt der veralteten Technologie CMD/Batch doch bitte die Powershell zu benutzen, ausschlägst/ignorierst. Solltest Du das Ganze beruflich machen und in Windows-Infrastrukturen unterwegs sein und nicht kurz vor der Rente stehen, wirst Du nicht mehr lange an Powershell vorbei kommen. Und es wird sich mit absoluter Sicherheit für Dich lohnen. Ich habe bereits Code gepostet, der mit klitzekleinen Änderungen alles enthält was Du brauchst. Vielleicht spielst Du einfach ein bissl damit. Wenn hier ein bissl guter Wille von Dir erkennbar wird, wird Dir normalerweise so lange geholfen, bis das Problem gelöst ist. Es bringt Dich nicht weiter, weder beruflich noch persönlich, hier wie ein Kleinkind zu bocken und die Leute, die Dir versuchen zu helfen, jetzt auch noch frech anzuranzen. Ich wünsche einen schönen Abend. Zitieren Link zu diesem Kommentar
Sascha321 12 Geschrieben 1. Mai 2018 Autor Melden Teilen Geschrieben 1. Mai 2018 @BOfH_666 Nein ich mache das nicht beruflich und werde ich auch nicht mehr können. Ist einiges an Schicksalsschlägen dazwischengekommen. Ich bocke nicht, aber wenn man mich als dumm hin stellt, finde ich das auch nicht die feine Art. Ist schon eine Weile her als ich den MCSA(2003)gemacht habe, aber trotzdem weiss ich über Berechtigungen Bescheid, aber wenn Sunny61 dann meint, Berechtigungen wären die Grundlagen für Batch Programmierung, dann darf ich sicher auch mal zurück fauchen. Ich habe hier nicht so dick auf den Putz gehauen und gesagt ist alles kein Problem, das kam aus einer anderen Ecke. Aber das Skript zum laufen zu bringen, ist derjenige ja auch nicht in der Lage. Ich weiss das Power Shell heute angesagt ist, glaube mir, wenn ich könnte und noch Zeit hätte, hätte ich mich damit auseinandergesetzt. Zitieren Link zu diesem Kommentar
tesso 375 Geschrieben 1. Mai 2018 Melden Teilen Geschrieben 1. Mai 2018 Powershell ist keine Raktentechnik. Erster Treffer bei google "powershell get volume label" Get-Volume |select driveletter,filesystemlabel Das manche Dinge mit batch ein Krampf sind merkst du doch gerade selbst. Warum du dich dann gegen eine andere Lösung sträubst kann ich nicht nachvollziehen. Zitieren Link zu diesem Kommentar
Sunny61 807 Geschrieben 1. Mai 2018 Melden Teilen Geschrieben 1. Mai 2018 (bearbeitet) vor 15 Stunden schrieb Sascha321: Sorry Sunny61 Aber wieso sollte ich die Batch Datei als Administrator starten wenn ich die Abfrage als normaler User machen kann und Antwort bekomme. Wenn Du da schon über Grundlagen reden willst. Und ich nehme an Du hat den Code nicht getestet, sonst wäre dir aufgefallen, das er erst ab dem zweiten Laufwerk funktioniert. Mir aber sagen das das mit den Berechtigungen zu den Grundlagen gehört und selber nicht merken das die Abfrage mit normalen Userrechten funktioniert. Scheint dann doch wohl nicht ganz so einfach zu sein, selbst für Profis Ich dachte bei dir läuft der Code nicht? Immer mehr Ungereimtheiten. Ja, der Code den ich gepostet habe, habe ich auch getestet. Und bei mir kam die richtige Antwort raus. Warum das bei dir so ist, weiß ich nicht. Mein Stick hat die Bezeichnung 4GB und den LW-Buchstaben D:\ im Dateisystem. Aber egal, lass stecken. Ich werde dich nicht mehr lesen, insofern hast Du Ruhe vor mir. Leb wohl. EDIT: Niemand hat dich als dumm hingestellt. Du interpretierst ungeschriebenes in geschriebenes hinein. Und ich habe auch nicht Berechtigungen als Grundlage für Batch Programmierung angeprangert. Und nein, auch das gäbe dir kein Recht zu fauchen, da dich niemand angefaucht hat. bearbeitet 1. Mai 2018 von Sunny61 Zitieren Link zu diesem Kommentar
Sascha321 12 Geschrieben 1. Mai 2018 Autor Melden Teilen Geschrieben 1. Mai 2018 Der Code läuft eben nicht, versuch mal nach Laufwerk C eine IF abfrage zu machen. Von mir aus kann der Thread gelöscht werden, der verbraucht nur Platz und sinnvoll ist er eh nicht. 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.