Neben dieser ersten Möglichkeit zum Umgang mit Disketten,
stellen die sogenannten m-Tools noch
eine weitere bereit. Die m-Tools wurden zu einer Zeit entwickelt, als
die Unix-Systeme
das FAT-Dateisystem noch nicht unterstützten, die PCs
aber schon so weit verbreitet waren, dass es sinnvoll erschien,
PC-Disketten lesen und schreiben zu können.
Wie gesagt, kann Linux heutzutage PC-Disketten wie normale
Dateisysteme behandeln. Für den Fall, dass
-
man es irgendwo mit einem alten Unix zu tun hat, das FAT als Dateisystem nicht
beherrscht
-
oder man sich oft darüber geärgert hat, die Diskette
entnommen zu haben, ohne vorher das Dateisystem per umount-Befehl
ausgehängt zu haben
stehen die m-Tools auch heute noch bereit.
Die wichtigsten Befehle lauten
-
mdir <DOS-Pfad> ...
-
mcopy <DOS-Pfad> ... <Unix-Pfad>
-
mdel <DOS-Pfad> ...
Wie man an den Namen erkennen kann, ahmen diese Befehle ihre
Vorbilder aus der DOS-Shell nach.
So kann man z. B. mit
das Verzeichnis der Diskette anzeigen.
Der Befehl
user@linux ~$
mcopy "a:/*.doc" "a:/*.dok" ~/eingang/
|
kopiert alle Dateien aus dem Wurzelverzeichnis der Diskette
mit Endungen .doc und .dok in das Verzeichnis eingang
unterhalb des Heimatverzeichnisses des aktuellen Benutzers.
(Das Tilde-Zeichen ~ ist unter Unix die Kurzform für den absoluten Pfad zum
Heimatverzeichnis eines Benuters.)
Man beachte, dass alle Muster
welche die Zeichen * oder ? enthalten,
in der Shell in Anführungszeichen zu setzen sind, da sonst die Shell
versucht, eine Namensexpansion
vorzunehmen. Diese kann nur fehlschlagen, da die
Shell keine DOS-Pfade kennt.
Das gilt auch für die anderen
Sonderzeichen der Shell wie $, ; oder {, deren Verwendung in
Dateinamen, gleich auf welchem Betriebssystem, ohnehin nicht
empfehlenswert ist. Wem das zu kryptisch ist, der setze die Pfade
grundsätzlich immer in Anführungszeichen. Nähere Hintergründe gibt es
im Kapitel über die Shell.
Im Unterschied zum DOS-Betriebssystem, wo der Befehl
alle Dateien anzeigt, steht in einer Unix-Shell
das Muster * für alle Dateien (außer den versteckten Dateien,
deren Dateiname mit einem Punkt beginnt).
Der Ausdruck *.* dagegen steht unter Unix nur für Dateien,
die tatsächlich einen Punkt im Dateinamen enthalten.
Der Befehl:
user@linux ~$
mdel "a:/alt/*.*"
|
löscht nur Dateien im Verzeichnis alt, die einen Punkt im Namen haben.
Dateien ohne Punkt im Namen wie ehemals_wichtig bleiben erhalten.
Um mit den m-Tools auf eine Diskette zugreifen zu können,
kann und darf sie nicht gemountet sein!
Die Manpage zu den m-Tools gibt weitere Informationen. Sie können
sie mit dem folgenden Kommando aufrufen:
|