alle Laufwerke in bat-datei auslesen.
lima-city → Forum → Programmiersprachen → Sonstige Programmiersprachen
angeben
anweisung
befehl
beispiel
code
datei
eingabeaufforderung
existiert laufwerk
falsch echo
funktionieren
hilfe
inhalt
jeweiligen laufwerk
laufwerk
sache
sagen
schleife
test
text
tip
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Am einfachsten wäre:
Eine for-Schleife, die von A bis Z durchläuft, das sind zugleich alle möglichen Laufwerke. Dann prüfst du, ob die Datei auf dem jeweiligen Laufwerk existiert...
\"Laufwerk existiert nicht\" ist ja gleichbedeutend mit \"Datei existiert nicht\" =)
Beitrag geändert: 6.3.2008 19:27:29 von cbhp -
ho ;)
finde die obrigen vorschläge gut - habe dazu nichts mehr zu sagen...
aber würdest du mir verraten, wie du das mit dem %1 gelöst hast?
ich finde den alten thread nicht mehr *g*
lg
Sincer
//EDIT: mir wäre noch eingefallen, dass du einfach eine txt datei hast, in der nur %1 steht, die wird ausgelesen, und der inhalt 1:1 in die neue ini kopiert *g*
//EDIT:
So, jetzt habe ich es geschafft.
Einfach statt \'%1\' \'%%1\' schreiben, dann steht genau das in der datei, was ich wollte.
lg
Vali
kk^^
Beitrag geändert: 6.3.2008 20:41:42 von sincer -
Am einfachsten wäre:
Eine for-Schleife, die von A bis Z durchläuft, das sind zugleich alle möglichen Laufwerke. Dann prüfst du, ob die Datei auf dem jeweiligen Laufwerk existiert...
\"Laufwerk existiert nicht\" ist ja gleichbedeutend mit \"Datei existiert nicht\" =)
An so einer Schleife hätte ich schon länger gebastelt, aber kannst du mir sagen, wie ich eine Schleife von A bis Z in einem Batch-Skript unter XP/Vista mache?
lg
Vali -
Hier ein Beispiel:
(Kann evtl. bei Diskettenlaufwerken einen Fehler aufweisen...)
ECHO OFF CLS FOR %%i 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 IF EXIST %%i:\\\\ echo Laufwerk %%i:\\\\ existiert. PAUSE EXIT
Tipp: Gib in die Eingabeaufforderung IF /? und FOR /? ein, dann erhältst du weitere Beispiele.
Beitrag geändert: 30.3.2008 21:31:50 von cbhp -
Statt der Anweisung, die ausgeführt werden soll ein \"call batchdateiname.bat\".
-
bluedragonebook schrieb:
Statt der Anweisung, die ausgeführt werden soll ein \'call batchdateiname.bat\'.
Viel zu umständlich und aufwändig.
valuser schrieb:
tipp: statt cls kann man auch einfach @echo off schreiben, dann wird dieser Text auch nicht ausgegeben.
Falsch.
ECHO ON bzw. ECHO OFF schaltet nur die Befehlsanzeige an oder aus.
CLS hingegen löscht den Bildschirminhalt, also alle vorherigen Befehlsanzeigen, besonders nützlich, damit nicht zu viel Text in der Eingabeaufforderung steht.
valuser schrieb:
Aber ich würde gerne in der Schleife mehrere Sachen angeben, also wie müsste ich es schreiben, so wie in vb mit loop am schluss der schleife?
Hättest du in der Hilfe nachgeschaut, wüsstest du\'s... einfach IF /? eingeben.
IF EXIST test.txt ( del test.txt echo Datei wurde entfernt ) ELSE ( echo test.txt fehlt )
Mit Hilfe der Klammern kannst du mehrere Befehle einbauen.
Beitrag geändert: 1.4.2008 13:58:00 von cbhp -
also würde das auch funktionieren:
echo off >nul
Nein, das funktioniert NICHT oÔ
@echo off
- gibt den Befehlstext als solchen nicht aus. In einer \"batch.bat\" als erster Befehl vor z. B. \"echo Hallo\":
C:\\\\>batch.bat Hallo C:\\\\>
echo off >nul
- schreibt das Ergebnis des Befehls in das \"NUL\"-Device, hier sieht das dann so aus:
C:\\\\>batch.bat C:\\\\>echo off >nul Hallo C:\\\\>
Wie du siehst, wird hier der Befehlstext mit ausgegeben. Das ist ein kleiner aber feiner Unterschied. :)
Beitrag geändert: 8.4.2008 17:52:27 von bluedragonebook -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage