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

In BAT Datei bei Pfad Laufwerksname statt Laufwerksbuchstaben angeben?

Frage Entwicklung Batch & Shell

Mitglied: TankWart

TankWart (Level 1) - Jetzt verbinden

11.05.2007, aktualisiert 20.05.2007, 14827 Aufrufe, 10 Kommentare

Ich würde gerne per BAT Datei einen Ordner auf einer Externen Festplatte erstellen. Im Pfad soll aber der Laufwerksname statt dem Buchstaben verwendet werden.

Hallo zusammen,
Ich würde gerne per BAT Datei einen Ordner auf einer Externen Festplatte erstellen. Im Pfad soll aber der Laufwerksname statt dem Buchstaben stehen.

Problem ist halt, das der Buchstabe nicht immer gleich ist.

Also statt:
md N:\%date%

Irgendwie so:
md eindeutiger_lauwerksname:\%date%

Ist es generell möglich einen Laufwerksnamen zu übergeben??
Wie frage ich am besten ab ob das Laufwerk vorhanden ist?

Ich danke schon mal wieder im Voraus


Gruß

TankWart
Mitglied: miniversum
11.05.2007 um 12:29 Uhr
Du könntest mit einer Forschleife alle Laufwerksbuchstaben von A bis Z duchprüfen wie deren Datenträgerbezeichnung ist.
Die Datenträgerbezeichnung erhällst du indem du in einer anderen Forschleife die erste Zeile einer Dir Anweisung auf den jeweiligen Laufwerksbuschstaben durchschaust und das 6. token mit der gewünschten Datenträgerbezeichnung vergleichst.

Nur als grober Ablauf gedacht.

miniversum
Bitte warten ..
Mitglied: Lord-Helmi
11.05.2007 um 12:40 Uhr
Hallo,

oder du sorgst dafür, dass dein Laufwerk immer den selben Laufwerksbuchstabe bekommt. Ein kleines Tool hierfür: http://www.uwe-sieber.de/usbdlm.html

Gruß
Michael
Bitte warten ..
Mitglied: TankWart
11.05.2007 um 13:30 Uhr
erst mal danke für die schnellen Antworten.

Miniversum, hast du irgendwo eine Seite parat, wo ein Beispiel mit der Forschleife darin vorkommt??
Ich bin in Batch ein absoluter Anfänger, möchte mich ja auch garnicht so tief darin einarbeiten.

Brauche das ganze halt für einen Kunden.

Das Tool wär schon nicht schlecht, aber wie ist dass, wenn ich die Platte an einem anderen PC anschließe??
Müsste ich das Prog. auf jeden Rechner ausführen, wo ich die Platte so benutzen möchte um immmer den gleichen Buchstaben zu erhalten?

Und wie ist das mit Win98?
Auf der Website steht ja das es eigentlich nur mit Win XP und höher richtig läuft.


Ich danke schon mal wieder im Voraus

Gruß

TankWart
Bitte warten ..
Mitglied: miniversum
11.05.2007 um 14:11 Uhr
achso das soll auch auf win98 laufen? dann wirds schwierig mit batch. ab 2000 würds da besser gehen.

Könnte dir eine Batch zusammenbasteln. Aber die läuft auf 98 danahlt nicht.

miniversum
Bitte warten ..
Mitglied: TankWart
11.05.2007 um 14:15 Uhr
für das erste würde auch Win XP reichen, bräuchte es evtl. halt mal wieder auch auf einem Win98 Rechner.

Hättest du da ein Beispiel für mich?
Wär echt super.

Danke schon mal wieder im Voraus.

Gruß

TankWart
Bitte warten ..
Mitglied: miniversum
11.05.2007 um 15:44 Uhr
Versuchs mal damit:
01.
@echo off & setlocal enabledelayedexpansion 
02.
set "name=Laufwerksbezeichnung" 
03.
 
04.
for %%L 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 ( 
05.
dir %%L:>NUL 2>NUL && ( 
06.
set "label=" 
07.
FOR /F "tokens=6 delims= " %%N in ('dir %%L:') do if not defined label set "label=%%N" 
08.
if !label! equ %name% ( 
09.
set Lw=%%L 
10.
11.
12.
13.
 
14.
ECHO md %Lw%:\%date%
In der zweiten Zeile mußt du halt die Laufwerksbezeichnung anpassen. Das Laufwerk steht dann in der Variabeln %Lw%. Gibt es mehrere Laufwerke mit der gleichen bezeichnung wird das Laufwerk mit dem Buchstaben verwendet der im Alphabet am weitesten hinten ist.
Unten steht dein Befehl ECHO md %Lw%:\%date% dann noch mit ECHO drin das du siehst das es so gehen sollte. Das ECHO kannst du ja dan entfernen wenn es so geht wie du willst.

miniversum
Bitte warten ..
Mitglied: Biber
11.05.2007 um 18:35 Uhr
Moin TankWart,

wie miniversum schon angedeutet hat... unter Win9X wird es umständlicher.
Unter Win2k und höher geht es mit einem Einzeiler.

Unter Nicht-Win9x: bau diese angepasste FOR-Zeile in den Batch mit ein:

01.
::dein KopierBatch.bat 
02.
@echo off 
03.
.... 
04.
 
05.
for %%i in (C D E F G X Y Z) do if exist %%i: dir %%i:xx 2>nul|find /i "datenträger"|find "System XP"|find /i "%%i:">nul && Set DasLaufwerk=%i: 
06.
 
07.
REM Falls ermitelbar, ist hier %dasLaufwerk% gefunden
Erläuterung:
In diesem Beispiel werden die willkürlich angenommen Laufwerksbuchstaben C D E F G X Y Z geprüft (nicht alle existieren) und überprüft, welches davon "System XP" heißt.
Das ist bei mir auf Laufwerk C: der Fall, heraus kommt also "Set DasLaufwerk=C:"
Unter der Variable %DasLaufwerk% kannst Du also C: ansprechen

Test zum Copy & Paste am CMD-Prompt:

01.
>for %i in (C D E F G X Y Z) do @if exist %i: dir %i:xx 2>nul|find /i "datenträger"|find "System XP" 
02.
|find /i "%i:">nul && @echo Set DasLaufwerk=%i: 
03.
Set DasLaufwerk=C:
Unter Win9x müsstest Du leider auf das "&&"-Zeichen verzichten und daher das Ganze in Einzelzeilen auseinanderziehen:

01.
::dein W9xKopierBatch.bat 
02.
@echo off 
03.
.... 
04.
 
05.
if exist C: dir C::xx 2>nul|find /i "datenträger"|find "System XP"|find /i "C:">nul  
06.
IF not errorlevel 1 set Daslaufwerk=C: 
07.
IF not errorlevel 1 goto :LwFound 
08.
 
09.
if exist D: dir D::xx 2>nul|find /i "datenträger"|find "System XP"|find /i "D:">nul  
10.
IF not errorlevel 1 set DasLaufwerk=D: 
11.
IF not errorlevel 1 goto :LwFound 
12.
.... 
13.
... 
14.
:LwFound 
15.
.... 
16.
REM hier ist %DasLaufwerk% ermittelt, falls es zu finden ist 
17.
 
18.
.... 
19.
 
[ungetestete Skizzen]

Gruss
Biber
Bitte warten ..
Mitglied: TankWart
20.05.2007 um 10:23 Uhr
wow,
danke für die Antworten, war im Urlaub und werde sie morgen gleich mal testen.

Gruß
TankWart
Bitte warten ..
Mitglied: yakazaa
21.10.2011 um 13:22 Uhr
Hi zusammen,
ich suche derzeit ein gleiches Skript und war froh dieses gefunden zu haben.

Leider klappt das bei mir nicht so recht:

Ich suche z.B. nach der Bezeichnung DATA (Es gibt nur eine Partition die bei mir so heißt, das Wort DATA kommt auch in keiner anderen Bezeichnung vor), liegt auf dem Buchstaben D:
Das Skript gibt mir aber "j_:\ " aus.

1.) Wieso j statt d ?
2.) Wieso das Leerzeichen hinter dem Buchstaben ?

Grüße aus Dortmund,
Dominik

EDIT:
Fehler 1 gefunden:
Das Laufwerk J: ist bei mir ein Netzlaufwerk welches auf \\Computer-1\DATA gemappt ist.
Obwohl ich es im Arbeitsplatz umbenannt hatte, heißt die Freigabe natürlich immernoch DATA

Aber wie steht es um Fehler 2 ?
Bitte warten ..
Mitglied: Biber
21.10.2011 um 20:00 Uhr
Moin yakazaa,

Zitat von yakazaa:
Hi zusammen,
1.) Wieso j statt d ?
2.) Wieso das Leerzeichen hinter dem Buchstaben ?

Grüße aus Dortmund,
Dominik

EDIT:
Fehler 1 gefunden:
Das Laufwerk J: ist bei mir ein Netzlaufwerk welches auf \\Computer-1\DATA gemappt ist.
Obwohl ich es im Arbeitsplatz umbenannt hatte, heißt die Freigabe natürlich immernoch DATA

Aber wie steht es um Fehler 2 ?

Fehler 2 ist erklärlich, wenn versehentlich ein Leerzeichen (SPACE) am Ende von miniversums Zeile 09 steht.
01.
REM STREICHE die alte Zeile 09 
02.
set Lw=%%L  
03.
REM SETZE als neue Zeile 09 
04.
set "Lw=%%L" 
Grüße und schönes Wochenende
Biber
Bitte warten ..
Ähnliche Inhalte
Basic
Excel VBA - speichern, senden, Pfad angeben
gelöst Frage von next01deBasic3 Kommentare

Hallo Zusammen, ich würde gerne eine Excel VBA schreiben, welche folgendes durchführt: 1. Die Arbeitsmappe soll ganz normal gespeichert ...

Batch & Shell
Mehrere.csv Dateien zusammenfügen zu einer Datei mit bat
Frage von PiotrneyBatch & Shell4 Kommentare

Hallo, Ich habe mich im Forum umgeschaut ob jemand diese Frage schon gestellt hat. Leider keine der Antworten passen ...

Backup
Robocopy CMD funkioniert, aus der BAT heraus wird der Pfad nicht gefunden
gelöst Frage von ApokratBackup6 Kommentare

Hallo zusammen, ich bin jetzt schon seit 2 Tagen auf der Suche nach meinem Problemchen. Bei einem Kunden (WIN10 ...

Batch & Shell
Bat Datei Auführen
gelöst Frage von talaihanBatch & Shell1 Kommentar

Hallo, wie kann man es erreichen das eine Bat Datei auf einem Lokalen Rechner ohne Internetzugriff und ohne zugehörigkeit ...

Neue Wissensbeiträge
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 16 StundenViren und Trojaner1 Kommentar

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 19 StundenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Vmware
DOS 6.22 in VMWare mit CD-ROM
gelöst Frage von hesperVmware10 Kommentare

Hallo zusammen! Ich hab ein saublödes Problem. Es ist eine VMWare mit DOS 6.22 zu erstellen auf dem ein ...

Cloud-Dienste
PIM als SaaS Nutzungsgebühr
Frage von vanTastCloud-Dienste8 Kommentare

Moin, wir haben uns ein PIM (Product Information Management) nach unseren Ansprüchen für viel Geld als SaaS-Lösung bauen lassen. ...