yazend
Goto Top

Laufwerk nicht per Buchstaben sondern Namen ansprechen

Hallo zusammen,


Ich bin auf der Suche nach einer Lösung um ein Laufwerk "USB-Stick" nicht über den zugeordneten Laufwerksbuchstaben "z.B. T:\ oder per UNC über \\T" aufzurufen
sondern über den Namen das dem Laufwerk zugeordnet wurde in diesem Fall "Sicherung"

Somit könnte man den USB Stick an jedem x beliebigen Pc anschließen per Batch eine Sicherung anstoßen und unabhängig davon welcher Laufwerksbuchstabe dem USB-Stick
zugeordnet wurde wüsste man die zu sichernden Daten werden auf den USB Stick Namens Sicherung geschrieben.

Hoffe es ist verständlich beschrieben was ich vor habe.

mfg yazend

Content-ID: 159597

Url: https://administrator.de/contentid/159597

Ausgedruckt am: 26.11.2024 um 04:11 Uhr

60730
60730 27.01.2011 um 16:00:25 Uhr
Goto Top
moin,

kauf dir nen Mac, der macht das schon immer so.

Anders wirst du das nicht lösen können, denn das ist eine Computerspezifische Einstellung die - wenn überhaupt auf jedem Rechner gemacht werden müßte, den der Stick sieht.

Ergo ein Ding der unmöglichkeit.
(Laufwerksbuchstaben sind doch auch nur Schal und Rauch)

Zum Thema entweder ein Schleifchen das den Stick abfragt oder in Uwe Sieberts Werkzeugkiste ansehen.

Oder ganz banal das Backupscript auf dem Stick anwerfen, das findet von alleine "heim"

md "%cd%\..\test\"

Gruß
unfroehlicher
unfroehlicher 27.01.2011 um 16:07:55 Uhr
Goto Top
du könntest per net share beim Einstecken des USBSticks automatisch einen Ordner freigeben...

somit hättest du immer den gleichen Pfad \\MacsSindDoof\usbstick ;)

obwohl ich persönlich auch das Scipt vom Laufwerk starten würde

gruss
60730
60730 27.01.2011 um 16:11:20 Uhr
Goto Top
Zitat von @unfroehlicher:
du könntest per net share beim Einstecken des USBSticks automatisch einen Ordner freigeben...
  • räusper
  • wer kann net shares anlegen und was braucht er dazu? etwa den vollen Pfad?

somit hättest du immer den gleichen Pfad \\MacsSindDoof\usbstick ;)
  • Wenn es Dieter Nuhr nicht schon gesagt hätte wmkAhemFh
yazend
yazend 27.01.2011 um 16:22:56 Uhr
Goto Top
Hi unfroehlicher,

ja alles recht schön und gut nur da bin ich wieder bei dem selbigen Problem das ich es über einen UNC Pfad anspreche welcher sich dann auch immer ändert und zudem an jedem PC einmalig eingerichtet werden muss. Bei 2 - 10 PC ist das ja noch überschau bar;
aber bei 1000 bis 2000 oder mehr ist das ein riesen aufwand. So hätte ich einfach 500 my book oder Konsorten gekauft jedem Abteilungsleiter bzw. Verantwortlichen eine in die Hand gedrückt und gesagt anschließen Datei ausführen und gut.
Somit hätten die ihre Lokalen Dateien Bilder Dokumente oder auch Musik auf der Externen Platte und wenn die Kiste über´n Jordan geht haben die immer noch ihre Sachen.

"Wichtige Daten und Firmen bezogenen Daten werden eh auf den Servern abgelegt und die haben ihre eigene Sicherung"

Es geht schlicht um die Daten der PC´s wenn einer Test´s Dokumentiert oder Fotos von Layouts ablegt etc. die auf dem Server nichts zu suchen haben.

mfg yazend
60730
60730 27.01.2011 um 16:33:52 Uhr
Goto Top
  • räusper

Hast du dir mal meinen Text durchgelesen und das kurze kleingeschriebene Zeilchen gefunden?
yazend
yazend 27.01.2011 um 16:39:29 Uhr
Goto Top
Zitat von @60730:
Hast du dir mal meinen Text durchgelesen und das kurze kleingeschriebene Zeilchen gefunden?

Ja hab ich gesehen. Ist eine Variante die ich jetzt auch erst mal anstreben werde. Aber dennoch nicht die endgültige Lösung.
bastla
bastla 27.01.2011 um 16:51:28 Uhr
Goto Top
@t-mo
md "%cd%\..\test\"
ist aber schon ziemlich abenteuerlich (und der Teil
%cd%\
entbehrlich) ... face-wink

... wobei die grundsätzliche Überlegung "Der Batch weiß, wo er sich befindet", nämlich in:
%~dp0
natürlich genau richtig ist ...

Grüße
bastla
bastla
bastla 27.01.2011 um 16:57:42 Uhr
Goto Top
Hallo yazend!

Dann ja vielleicht so:
@echo off & setlocal
set "GUDL=%temp%\GetUSBDriveLetter.vbs"  
echo Set fso=CreateObject("Scripting.FileSystemObject"):For Each D In fso.Drives:If D.DriveType=1 Then If D.IsReady Then If D.VolumeName="Sicherung" Then WScript.Echo D.DriveLetter:Exit For>"%GUDL%"  
echo Next>>"%GUDL%"  
set LW=
for /f %%i in ('cscript //nologo "%GUDL%"') do set LW=%%i:  
del "%GUDL%"  
if not defined LW cls & echo USB-Stick leider nicht erkannt! & echo. & pause & goto :eof
echo USB-Stick ist Laufwerk %LW%
Danach steht in %LW% der Laufwerksbuchstabe zur Verfügung ...

Grüße
bastla
60730
60730 27.01.2011 um 16:57:59 Uhr
Goto Top
Zitat von @bastla:
@t-mo
> md "%cd%\..\test\"
ist aber schon ziemlich abenteuerlich (und der Teil
 %cd%\
entbehrlich) ... face-wink

Salü Bastla

naja - solange die Abteuerspielplätze geschlossen sind face-wink

x / robopycopy brauchen doch ein benanntes Ziel, und das geht nicht nur mit %cd%, sondern - das sollte die Demo zeigen auch "tiefer" "%cd%\..\test\"
%~dp0
natürlich genau richtig ist ...

Ich hab mal zu W2k0 Zeiten was gestrickt und da ging genauer der dp0 voll in die Unterbuxse rein, seitdem meide ich den.
Grüße
bastla

retour
unfroehlicher
unfroehlicher 27.01.2011 um 16:58:09 Uhr
Goto Top
Zitat von @60730:
> Zitat von @unfroehlicher:
> ----
> du könntest per net share beim Einstecken des USBSticks automatisch einen Ordner freigeben...
  • räusper
  • wer kann net shares anlegen und was braucht er dazu? etwa den vollen Pfad?

> somit hättest du immer den gleichen Pfad \\MacsSindDoof\usbstick ;)
  • Wenn es Dieter Nuhr nicht schon gesagt hätte wmkAhemFh


autorun?
net share USBShare=%cd% /grant:benutzer,change /REMARK:"ich will Kekse"
bastla
bastla 27.01.2011 um 17:06:02 Uhr
Goto Top
@t-mo
... wobei sich allerdings auch schon mit
..\test\
der selbe Pfad (ist übrigens nicht "tiefer", sondern "nebenan") beschreiben lässt ...
Deine schlechten Erfahrungen mit
%~dp0
musste ich erfreulicher Weise noch nicht machen ...

Grüße
bastla
C.R.S.
C.R.S. 27.01.2011 um 17:07:45 Uhr
Goto Top
Hallo,

u.a. GoodSync kann ein Ziel bzw. eine Quelle über die Datenträgerbezeichnung ansprechen. Syntax dafür ist =Name:\

Grüße
Richard
bastla
bastla 27.01.2011 um 17:08:31 Uhr
Goto Top
@unfroehlicher
Bei Dir ist tatsächlich "autorun" (und noch dazu für Wechseldatenträger) aktiv?

Grüße
bastla
yazend
yazend 28.01.2011, aktualisiert am 18.10.2012 um 18:45:39 Uhr
Goto Top
Zitat von @bastla:
Hallo yazend!

Dann ja vielleicht so:
@echo off & setlocal
> set "GUDL=%temp%\GetUSBDriveLetter.vbs"  
> echo Set fso=CreateObject("Scripting.FileSystemObject"):For Each D In fso.Drives:If D.DriveType=1 Then If D.IsReady Then  
> If D.VolumeName="Sicherung" Then WScript.Echo D.DriveLetter:Exit For>"%GUDL%"  
> echo Next>>"%GUDL%"  
> set LW=
> for /f %%i in ('cscript //nologo "%GUDL%"') do set LW=%%i:  
> del "%GUDL%"  
> if not defined LW cls & echo USB-Stick leider nicht erkannt! & echo. & pause & goto :eof
> echo USB-Stick ist Laufwerk %LW%
> 
Danach steht in %LW% der Laufwerksbuchstabe zur Verfügung ...

Grüße
bastla

Hallo bastla,

diene möglichkeit erscheint mir sehr gut jedoch mag er es nicht ich bekomme immer

USB-Stick leider nicht erkannt!

habe nach langem suchen auch noch das hier gefunden jedoch tut sich da bei mir auch nichts
Laufwerk nicht per Buchstaben sondern Namen ansprechen
vieleicht steh ich auch gerade auf dem Schlauf und seh den Wald vor Bäumen nicht.

gruß yazend
60730
60730 28.01.2011 um 09:44:27 Uhr
Goto Top
Moin,

schau dir u.a mal Bastlas Zeile 4 an....

Sicherung

Wenn der Stick anders belabelt ist dann "findet" er den logischerweise auch nicht.

Gruß
bastla
bastla 28.01.2011 um 09:48:20 Uhr
Goto Top
Hallo yazend!

Nur zur Sicherheit: Meine Zeile 3 ist in der von Dir geposteten Fassung auf 2 Zeilen umgebrochen; abgesehen davon wäre noch zu beachten, dass der angegebene Name des Sticks ("Sicherung") case-sensitiv ist, also unter Berücksichtigung von Groß-/Kleinschreibung verglichen wird ...

Auch noch zu berücksichtigen: Mit dem Wert 1 für "DriveType" wird auf "Wechseldatenträger" eingeschränkt - wenn Du eine externe Festplatte verwendest (oder einen Stick / Speicher, der sich als Festplatte "ausgibt"), wäre der passende Wert 2 - um beide Fälle abzudecken:
echo Set fso=CreateObject("Scripting.FileSystemObject"):For Each D In fso.Drives:If D.DriveType=1 Or D.DriveType=2 Then If D.IsReady Then If D.VolumeName="Sicherung" Then WScript.Echo D.DriveLetter:Exit For>"%GUDL%"
Grüße
bastla
yazend
yazend 28.01.2011 um 10:25:08 Uhr
Goto Top
hi Bastla,

OK geändert in DriveType=2 jetzt funktioniert es,
vielen Dank für eure bemühungen und die immer Promten Antworten.

mfg yazend