====== 5.9.1) Das Betriebssystem MSDOS ====== MSDOS (DOS = Disk Operating System) ist ein Betriebssystem, das von der Firma Microsoft in den USA entwickelt wurde und früher zu den am meisten verbreiteten Betriebssystemen zählte. Die Entwicklungsgeschichte reicht sehr lange zurück, die erste Version gab es 1981. Mittlerweile ist MSDOS weitgehend duch die neuen Windows-Betriebssysteme abgelöst worden - trotzdem wird DOS für bestimmte Aufgaben auch heute noch verwendet, wie z.B. zur Erstellung von Batch-Dateien. Die Kenntnisse über DOS könnten auch insbesondere bei einem Crash nützlich sein, wenn Windows z.B. nicht mehr startet oder man ein Uralt-DOS-PC-Spiel noch mal spielen will. ===== Arbeiten mit DOS auf der Systemkonsole ===== Speicher zuvor folgenden Ordner auf deinem Verzeichnis: {{:informatik:k5inf:betriebssysteme:windows:dos-befehle.zip|}} ==== Start der Systemkonsole ==== * Start - Ausführen: cmd * Start - Programme - Zubehör - Eingabeaufforderung * Vollbildmodus: ALT + ENTER * Beenden: exit ==== Einige wichtige DOS-Befehle ==== === Allgemeine Befehle === |^Befehl ^Beschreibung | |help|zeigt eine Liste aller MS-DOS-Befehle und eine kurze Beschreibung| |help //Befehl //|man erhält Informationen zu einem bestimmten Befehl| |dir|zeigt Inhaltsverzeichnis des aktuellen Verzeichnisses an | |dir i:|zeigt den Inhalt des Laufwerks i| |dir *.exe|Stern ist eine "Wild Card". Er steht für eine beliebige Zeichenkombination, es werden somit alle .EXE-Dateien ausgegeben| |dir m??er.doc|Fragezeichen ist ebenfalls eine "Wild Card", jedoch für ein einzelnes Zeichen| |whoami|Gibt den Usernamen des ausführenden Benutzers aus| |hostname|Gibt den Rechnernamen aus| === Befehle für Verzeichnisse === Die folgende Befehle sind zum Anlegen, Wechseln und Löschen neuer Verzeichnisse. Das Verzeichnis, welches im aktuellen Eingabebereitschaftszeichen aufscheint, wird meist als **aktuelles Verzeichnis** oder **Arbeitsverzeichnis** bezeichnet. |^Befehl ^Beschreibung| |cd|change directory, Bedeutung von Syntax abhängig| |cd \ֱ |geht zum root (oberste Verzeichnisebene)| |cd \programme | wechselt in das Verzeichnis Programme ausgehend vom root| |cd programme |wechselt - ausgehend vom derzeitigen Arbeitsverzeichnis - in das Unterverzeichnis ''programme''| |cd . |Zeiger auf aktuelles Verzeichnis| |cd ..|Zeiger auf übergeordnetes Verzeichnis| |md|make directory - **erzeugt Unterverzeichnis**| |rd|remove directory - **löscht Unterverzeichnis**| |tree|zeigt die Verzeichnisstruktur auf dem aktuellen Laufwerk an| === Befehle für Dateien === Wichtiger Operationen mit Dateien sind das Kopieren, das Löschen und das Umbenennen. |^Befehl ^Beschreibung| |copy|benötigt zwei Parameter: 1. Quelldatei, die kopiert werden soll, 2. Zieldatei| |copy x.dat x.old|kopiert die Datei x.dat auf x.old (dabei wird x.dat nicht gelöscht!). Existiert bereits eine Datei x.old, so wird diese gelöscht und mit den Daten von x.dat gefüllt.| |copy *.* a:|kopiert alle Dateien im Arbeitsverzeichnis nach A:| |copy adam.dat a:|kopiert adam.dat **nach** a:adam.dat| |copy *.* c:\xy\z|kopiert alle Dateien des aktuellen Ordners auf die Festplatte c: ins Unterverzeichnis Z des Verzeichnisses xy| |del x.dat|löscht die Datei ''x.dat'' im aktuellen Verzeichnis| |del *.*|löscht alle Dateien im aktuellen Verzeichnis| |ren x.dat y.dat|rename, benennt x.dat in y.dat um| |move muster.doc windows|verschiebt ''muster.doc'' ind das Verzeichnis ''windows''| |type //Dateiname //|zeigt den Inhalt der angegebenen Datei am Bildschirm an| |edit //Dateiname //|ruft einen Editor auf, um den Inhalt einer Datei verändern zu können| |print //Dateiname //|gibt den Inhalt einer Datei auf dem Drucker aus| |xcopy /E| Kopiert ganze Verzeichnisse| |rmdir /S| Löscht Verzeichnisse trotz Inhalt | === DOS-Übung === Speichere den Ordner "DOS" {{:informatik:k5inf:betriebssysteme:windows:dos.rar|}} in dein Verzeichnis, bevor du mit der Übung beginnst! - Erzeuge ein Verzeichnis ''uebungen'' in deinem homedirectory. - Wechsle in dieses Verzeichnis. - Erstelle eine Datei ''test1.txt'' und ''test2.txt'' mit beliebigen Inhalt. - Kopiere die Datei ''test1.txt'' in die Datei ''test21.txt''. - Erstelle ein Verzeichnis ''aufgabe''. - Benenne ''test2.txt'' um in ''test12.txt''. - Kopiere die Dateien test1?.txt in das Verzeichnis ''aufgabe''. Welche Dateien wurden kopiert? - Kopiere dir alle Dateien aus dem Ordner''DOS'' in das Verzeichnis ''aufgabe''. Wie viele Dateien befinden sich nun in diesem Verzeichnsi? - Lasse dir alle Dateien mit der Endung ''*.txt'' ausgeben. - Lösche alle Dateien mit der Endung ''*.dat''. - Benenne alle Dateien mit der Endung ''*.bak'' um in ''*.txt''. - Lasse dir alle Dateien sortiert nach der Dateigröße anzeigen. Finde den Befehl selber heraus. - Gib den Inhalt der Datei ''hallo.txt'' aus. - Lasse dir alle Dateien anzeigen, bei denen im Dateinamen die Zahl 1 vorkommt. - Lösche diese Dateien. - Verschiebe alle Dateien aus dem Verzeichnis Aufgabe in das Verzeichnis ''uebungen''. - Lösche das Verzeichnis Aufgabe. - Gib den Befehl ''attrib +h *.*'' ein. - Lasse dir alle Dateien anzeigen. Was ist passiert? - Mache dir über den Befehl ''attrib'' schlau und gib einen Befehl ein, sodass alle Dateien wieder angezeigt werden. === BATCH (.bat) Files=== |^Befehl ^Beschreibung| |echo|Gibt Text aus| |@echo off|Schaltet die Autobefehlsanzeige aus| |title|Definiert den Titel des BATCH-Files| |set VAR=Text| Speichert Text in die Variable VAR| |set /P VAR=|Fordert den User auf eine Zeichenfolge einzugeben| |set/A C=%A%+%B% | /A gibt an, dass die Zeichenfolge rechts vom = ein numerischer Ausdruck ist, der ausgewertet wird. in C wird das Ergebnis von A+B gespeichert| |echo %VAR%| Ausgabe einer Variable -> Text| |echo %USERNAME%|Gibt den Usernamen des ausführenden Benutzers aus| |REM|Definiert einen Kommentar|