software:diy:batch:dos
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| software:diy:batch:dos [11/03/2006 19:03] – ergänzt uxt | software:diy:batch:dos [16/01/2023 15:01] (aktuell) – [Batchen am nackten Pofo] kilo | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== Batchen am nackten Pofo ====== | ====== Batchen am nackten Pofo ====== | ||
| - | Ohne jegliche Zusatzsoftware lassen sich kleine " | + | Ohne jegliche Zusatzsoftware lassen sich kleine " |
| * [[hilfe: | * [[hilfe: | ||
| * [[hilfe: | * [[hilfe: | ||
| + | |||
| ===== Mehr zum Befehl IF ===== | ===== Mehr zum Befehl IF ===== | ||
| Im Handbuch wird beschrieben wie man mit dem IF Befehl prüft ob eine Datei existiert, nicht aber wie man prüft ob | Im Handbuch wird beschrieben wie man mit dem IF Befehl prüft ob eine Datei existiert, nicht aber wie man prüft ob | ||
| - | überhaupt ein Dateiname als Pararmeter | + | überhaupt ein Dateiname als Parameter |
| IF %1== GOTO ENDE | IF %1== GOTO ENDE | ||
| - | funktioinert | + | funktioniert |
| - | übergeben wurde. Es ist leider nicht möglich einen Parameter mit einer Leerstelle zu vergleichen. Es gibt auch | + | |
| - | kein Symbol, | + | |
| Glücklicherweise erlaubt es IF die Bedingungen als " | Glücklicherweise erlaubt es IF die Bedingungen als " | ||
| - | " | + | " |
| nehmen wir den " | nehmen wir den " | ||
| IF %1.==. GOTO ENDE | IF %1.==. GOTO ENDE | ||
| - | Wurde kein Parameter übergeben verzweigt die Batchdatei zur Sprungmarke ENDE.\\ | + | Wurde kein Parameter übergeben, verzweigt die Batchdatei zur Sprungmarke ENDE. |
| - | Das selbe gilt für Umgebungsvariablen: | + | Dasselbe |
| IF %Name%.==. GOTO NONAME | IF %Name%.==. GOTO NONAME | ||
| Falls die Umgebungsvariable " | Falls die Umgebungsvariable " | ||
| Sprungmarke NONAME. | Sprungmarke NONAME. | ||
| + | |||
| ===== Der Parameter %0 ===== | ===== Der Parameter %0 ===== | ||
| Zeile 37: | Zeile 37: | ||
| anzeigen.\\ | anzeigen.\\ | ||
| \\ | \\ | ||
| - | Wärend | + | Während |
| <code dos> | <code dos> | ||
| @echo off | @echo off | ||
| Zeile 61: | Zeile 61: | ||
| und kein Parameter geht verloren. | und kein Parameter geht verloren. | ||
| \\ | \\ | ||
| + | |||
| + | |||
| + | |||
| ===== ECHO mit Grafikzeichen ===== | ===== ECHO mit Grafikzeichen ===== | ||
| - | Nur weil man in einer Batch-Datei ist muß man nicht auf eine etwas ansprechendere Bildschirmausgabe verzichten. Auch der Befehl ECHO kann so Manches | + | Nur weil man in einer Batch-Datei ist, muss man nicht auf eine etwas ansprechendere Bildschirmausgabe verzichten. Auch der Befehl ECHO kann so manches |
| Beispiel:\\ | Beispiel:\\ | ||
| - | Beginnen sie eine Batch-Datei wie gewöhnlich im Text-editor | + | Beginnen sie eine Batch-Datei wie gewöhnlich im Texteditor |
| @echo off | @echo off | ||
| echo | echo | ||
| - | Nach dem zweiten ECHO kommt eine Leerstelle. Schalten sie nun NUMLOCK ein (< | + | Nach dem zweiten ECHO kommt eine Leerstelle. Schalten sie nun NUMLOCK ein (< |
| - | Die Batch-Datei | + | Die Batch-Datei |
| <code dos> | <code dos> | ||
| @echo off | @echo off | ||
| Zeile 79: | Zeile 82: | ||
| echo ▓▒░TEST | echo ▓▒░TEST | ||
| </ | </ | ||
| - | Um nicht wieder NUMLOCK einschalten und die ASCII-Codes einzeln eingeben zu müssen verwenden sie das Klemmbrett um die Grafik-Zeichen in umgekehrter Reihenfolge an das Ende der Zeile anzuhängen. Dann ist die Zeile vollständig: | + | Um nicht wieder NUMLOCK einschalten und die ASCII-Codes einzeln eingeben zu müssen verwenden sie das Klemmbrett, um die Grafik-Zeichen in umgekehrter Reihenfolge an das Ende der Zeile anzuhängen. Dann ist die Zeile vollständig: |
| <code dos> | <code dos> | ||
| @echo off | @echo off | ||
| Zeile 89: | Zeile 92: | ||
| cls | cls | ||
| echo ╔════════════╗ | echo ╔════════════╗ | ||
| - | echo ║ Hallo Welt.║ | + | echo ║ Hallo Welt. ║ |
| echo ╚════════════╝ | echo ╚════════════╝ | ||
| pause >nul | pause >nul | ||
| Zeile 108: | Zeile 111: | ||
| |000|-|016|-| | |000|-|016|-| | ||
| |001|Cursor springt auf POS1|017|-| | |001|Cursor springt auf POS1|017|-| | ||
| - | |002|Löscht rückwärts bis Zeilenanfang|018|Text-Editor: | + | |002|Löscht rückwärts bis Zeilenanfang|018|Text-Editor: |
| |003|-|019|Text-Editor: | |003|-|019|Text-Editor: | ||
| |004|-|020|-| | |004|-|020|-| | ||
| Zeile 118: | Zeile 121: | ||
| |010|-|026|Springt zum Ende| | |010|-|026|Springt zum Ende| | ||
| |011|-|027|Esc| | |011|-|027|Esc| | ||
| - | |012|Löscht | + | |012|Löscht |
| |013|Zeilenumbruch|029|-| | |013|Zeilenumbruch|029|-| | ||
| |014|-|030|-| | |014|-|030|-| | ||
| Zeile 128: | Zeile 131: | ||
| ^^PROMPT^ASCII-Werte| | ^^PROMPT^ASCII-Werte| | ||
| |░▒▓|176, | |░▒▓|176, | ||
| - | |===>|205, 205, 205, 041| | + | |═══>|205, 205, 205, 041| |
| ===== Platzhalter (Wildcards) ===== | ===== Platzhalter (Wildcards) ===== | ||
| - | Es gibt Programme die keine Platzhalter (* und ?) in Dateinamen bzw. keine Dateimasken akzeptieren. Hier schafft folgende Batch-Datei | + | Es gibt Programme die keine Platzhalter (* und ?) in Dateinamen bzw. keine Dateimasken akzeptieren. Hier schafft folgende Batch-Datei |
| <code dos> | <code dos> | ||
| @echo off | @echo off | ||
| Zeile 149: | Zeile 152: | ||
| ===== Ein Menü ===== | ===== Ein Menü ===== | ||
| - | Hier ein Beispiel wie man sich ein kleines Menü zurecht-batchen kann wenn man keinerlei Software hat. Wird die Batch-Datei gestartet so erzeugt sie weitere 6 kleine Batch-Dateien, | + | Hier ein Beispiel wie man sich ein kleines Menü zurecht-batchen kann wenn man keinerlei Software hat. Leider gibt es keinen internen DOS-Befehl mit dem man Benutzereingaben abfragen kann. Dies kann nur die DOS-Befehlszeile. Deshalb muss die Eingabe des Benutzers als Dateiname vorhanden sein. Im folgenden Beispiel sind 6 mögliche Antworten des Benutzers vorgesehen. Wird die Batch-Datei gestartet so erzeugt sie weitere 6 kleine Batch-Dateien, |
| <code dos> | <code dos> | ||
| @echo off | @echo off | ||
| Zeile 157: | Zeile 160: | ||
| set prmpt= | set prmpt= | ||
| set menop= | set menop= | ||
| + | cls | ||
| goto cmdlin | goto cmdlin | ||
| :start | :start | ||
| - | set prmpt=%prompt% | ||
| cls | cls | ||
| if exist 1.bat goto menu | if exist 1.bat goto menu | ||
| - | if exist 6.bat del 6.bat | + | set prmpt=%prompt% |
| echo wait 6 | echo wait 6 | ||
| echo @echo off >1.bat | echo @echo off >1.bat | ||
| Zeile 202: | Zeile 205: | ||
| :cmdlin | :cmdlin | ||
| </ | </ | ||
| + | Sobald sie das Menü und die Eingabeaufforderung sehen haben sie die Batch-Datei bereits verlassen und befinden sich in der DOS-Befehlszeile. Starten sie das Programm deshalb auch nur von der Befehlszeile, | ||
software/diy/batch/dos.1142101155.txt.gz · Zuletzt geändert: (Externe Bearbeitung)
