[BATCH] Hoe de volume name van een schijf in een variabele?

Pagina: 1
Acties:

  • Tanuki
  • Registratie: Januari 2005
  • Niet online
Ik ben opzoek naar een commando om de volume naam (bijv. WINDOWS voor mijn C-partitie) in een variabele te krijgen en daarmee te kunnen werken.

Ik kan wel met
Batchfile:
1
vol Z:\

een output krijgen, maar daar staat niet alleen de volume naam in. En daarbij kan ik die output ook niet in een variabele krijgen.

Wat ik uiteindelijk wil, is een map aanmaken die dezelfde naam heeft als de volume naam van de DVD die in mijn DVD-drive zit. Het liefst heb ik die in een variabele, want dan kan ik die ook nog voor andere commando's gebruiken.


Dus mijn vraag is: Wie weet hoe ik dat kan doen? :| Met de output van "vol" kom ik niet ver, want die komt gewoon op het scherm te staan en er staat allerlei tekst omheen.

Misschien is er een programma wat je kunt aanroepen en dat na de aanroep de volume naam in %volumename% (bijvoorbeeld) staat?

PV: Growatt MOD5000TL3-XH + 5720wp, WPB: Atlantic Explorer v4 270LC, L/L: MHI SCM 125ZM-S + SRK 50ZS-W + 2x SRK 25ZS-W + SRK 20ZS-W Modbus kWh meter nodig?


  • Herby
  • Registratie: Januari 2004
  • Laatst online: 17-01-2022

Herby

Stalknecht

Waarom niet gewoon zelf een veriable aanmaken met set ?

Compromis? Hoezo heb ik het mis dan?! | Geluk = gelul met een K | з=(•̪●)=ε


  • Tanuki
  • Registratie: Januari 2005
  • Niet online
Herby schreef op zondag 15 oktober 2006 @ 14:41:
Waarom niet gewoon zelf een veriable aanmaken met set ?
En wat zet ik daar dan in?

Batchfile:
1
SET %vol% ...


Of hoe ging dat ook alweer? Maar ik wil niet "hardcoded" de volume naam in mijn batchfile hebben. Die verschilt namelijk per DVD die ik heb. (Mijn batchfile is een autoplay handler die ik gebruik om een bestandenlijst te maken van de DVD die op dat moment in de drive zit, nu wil ik ook bepaalde bestanden kopiëeren naar een map die hetzelfde moet zijn als de volume naam van de DVD).

Een andere oplossing is evt. ook welkom, maar ik denk dat dit de makkelijkste is.

PV: Growatt MOD5000TL3-XH + 5720wp, WPB: Atlantic Explorer v4 270LC, L/L: MHI SCM 125ZM-S + SRK 50ZS-W + 2x SRK 25ZS-W + SRK 20ZS-W Modbus kWh meter nodig?


  • ripperke
  • Registratie: Augustus 2003
  • Laatst online: 15-10-2025

ripperke

w00t!

code:
1
2
3
4
C:\>for /f "tokens=6" %a in ('vol d:') do echo %a

C:\>echo Movies
Movies


in %a zit dus je volume naam

If TCP/IP handshaking was less formal, perhaps SYN/ACK would be YO/WASSUP


  • Tanuki
  • Registratie: Januari 2005
  • Niet online
ripperke schreef op zondag 15 oktober 2006 @ 14:45:
code:
1
2
3
4
C:\>for /f "tokens=6" %a in ('vol d:') do echo %a

C:\>echo Movies
Movies


in %a zit dus je volume naam
Nu ik op "volume name" en "tokens=6" zoek, vind ik de oplossing ook. :)

Ik denk dat die tokens=6 betekent dat ie het 6e woord pakt ofzo?

Bedankt in ieder geval!!! Hier was ik nooit op gekomen! :)


EDIT: Nu heb ik nog een probleem. Kan ik ook een variabele gebruiken in het 'vol ..' gedeelte? Ik wil daar 'vol %1' gebruiken.

[ Voor 11% gewijzigd door Tanuki op 15-10-2006 14:59 ]

PV: Growatt MOD5000TL3-XH + 5720wp, WPB: Atlantic Explorer v4 270LC, L/L: MHI SCM 125ZM-S + SRK 50ZS-W + 2x SRK 25ZS-W + SRK 20ZS-W Modbus kWh meter nodig?


  • Mallorca
  • Registratie: Januari 2004
  • Niet online
Dit kun je eenvoudig doen met for /f

code:
1
for /f "tokens=6 delims= " %a in ('vol') do set vol=%a


Deze werkt in een engelstalig omgeving voor de nederlands talige moet je "tokens =x" aanpassen.

  • Intrepidity
  • Registratie: December 2003
  • Laatst online: 24-06-2024
l0c4lh0st schreef op zondag 15 oktober 2006 @ 14:50:
[...]

EDIT: Nu heb ik nog een probleem. Kan ik ook een variabele gebruiken in het 'vol ..' gedeelte? Ik wil daar 'vol %1' gebruiken.
code:
1
2
set station=C:
for /f "tokens=7 delims= " %a in ('vol %station%') do set vol=%a


Voila :)
Pagina: 1