Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Corrected links that should have been relative instead of absolute.

1. Vergleich der Systeme UNIX / MS-DOS

Allgemein bestehen folgende Unterschiede / Ähnlichkeiten zum Betriebssystem MS-DOS 

  • In UNIX sind keine Laufwerksbuchstaben vorhanden, alle Verzeichnisse sind am ROOT-Verzeichnis angebunden (-sprich "gemountet").
  • Als Trennzeichen zwischen Verzeichnisnamen wird in UNIX der "/" verwendet. Sprich "Slash" statt "Backslash"
  • Zur Übergabe von Parametern an Befehle wird in UNIX das "-" verwendet (MS-DOS verwendet häufig "/")
  • Es ist unbedingt auf die Klein- /Großschreibung zu achten !
  • Es werden lange Dateinamen unterstützt.
  • Es findet keine Zuordnung von Dateinamenerweiterungen zu Dateitypen statt. (Keine EXE oder BAT-Dateien) 

MS-DOS

UNIX

Kurzbeschreibung

DIR

ls

Dateien / Verzeichnis anzeigen

COPY

cp

Dateien / Verzeichnisse kopieren

REN

mv

Dateien / Verzeichnisse umbenennen / verschieben

MD

mkdir

Dateiverzeichnis anlegen

CD

cd

Wechsel des aktuellen Verzeichnisses

CD

pwd

Anzeige des aktuellen Verzeichnisses

RD

rmdir

Leere Verzeichnisse löschen

DELTREE

rm -r

Verzeichnis incl. Unterverzeichnis und Dateien löschen.

TYPE

cat

Inhalt einer Datei ausgeben

MORE

more

Filter zum seitenweisen Anzeigen (bei anderen UNIX-Systemen auch: pg)

FIND

grep

Textzeilen nach Mustern durchsuchen

DIR /S

find

Datei in Unterverzeichnissen suchen

ATTRIB

chmod

Dateiattribute / Zugriffsrechte setzen

EDIT

vi

Dateiinhalte editieren

HELP

man

Hilfe zu Betriebssystembefehlen anzeigen. (Bei LINUX auch: info)

Bild 1: Vergleichsliste gebräuchliche Befehle MS-DOS/UNIX

2 Befehle im Umgang mit dem Dateisystem

2.1   Übersicht über die Benutzung der Massenspeicher

Jeder Benutzer muß sich einen Überblick über die Belegung der lokalen Massenspeicher (Festplatten, CD-ROM) verschaffen können. Hierbei sind Zugriffsrechte, Verzeichnisnamen und verbleibender Plattenplatz von großer Bedeutung. 
Folgende Befehle können hierfür eingesetzt werden: 

Befehl

Beschreibung

mount

Aktuell im root-Dateisystem eingehängte Dateisysteme mit Filesystemtyp, Einhängpunkt und grundsätzliche Schreibmöglichkeit, ggf. Fremdrechner bei nfs-Systemen.

df -k

Übersicht Plattengröße, belegter und unbelegter Speicherplatz, Einhängpunkt.

du

Plattenbelegung nach Verzeichnissen aufgelistet.

 

2.2 Inhalt von Dateiverzeichnissen anzeigen

Mit dem Befehl ls kann der Inhalt eines Dateiverzeichnisses angezeigt werden. Die gebräuchlichste Form ist dabei "ls -l", wodurch z.B. folgende Ausgaben erzeugt werden: 

Code Block
total 1
-rwxr-xr-x    1    user1    group1   7    Jun 9 09:34 file1 

Hierbei haben die Angaben folgende Bedeutung: 
- Dateityp/Zugriffsrechte:

Es wird eine 10-stellige Zeichenkette ausgegeben. 

Stelle

Bedeutung/Ausprägung

1

- = reguläre Datei
d = Dateiverzeichnis
l = symbolischer Verweis auf eine andere Datei (Link)
c = Zeichenorientiertes Gerät (Characterdevice)
b = Blockorientiertes Gerät (Blockdevice)
weiteres siehe Manual

2-4

Dateizugriffsrechte des Eigentümers im Format rwx
r = Leserechte (read)
w = Schreibrechte (write)
x = Ausführungsrechte (execute); hierfür können auch die Ausprägungen "s" = User-id-Bit oder "t" = sticky-Bit stehen. (Ausführender erhält die Identität des Eigentümers der Datei)

5-7

Wie vor, Rechte für alle Benutzer der gleichen Gruppe

8-10

Wie vor, Rechte für alle anderen Benutzer.


-       Anzahl der "Hardlinks" auf die Datei. Standard ist "1", d.h. es existiert eine Beschreibung der Datei. Jedes anlegen eines "Links" erhöht den Eintrag (nicht "Softlinks" oder "symbolische Links")

-       Eigentümer der Datei und dessen Gruppe

-       Größe der Datei

-       Datum und Uhrzeit der letzten Änderung der Datei

-       Dateiname 

2.3             Verzeichnisse anlegen / löschen, Dateien löschen

mkdir <Verzeichnisname[unix:n]>  #legt die Verzeichnisse an

rmdir <Verzeichnisname[unix:n]>  #löscht die leeren Verzeichnisse

rm <Datei[unix:en]>     #löscht die angegebenen Dateien  
Þ  Nicht leere Verzeichnisse können mit
"rm -r <Verzeichnisname[unix:n]>" gelöscht werden. 
Zum Befehl "rm" sind noch folgende Optionen gebräuchlich: 

-f

Schaltet die ggf. erscheinende Warnmeldung aus. Diese erscheint ggf. wenn eine Datei das Zugriffsrecht "w" für den Benutzer nicht hat. Die Datei kann trotzdem gelöscht werden, wenn der Benutzer das Schreibrecht auf das Verzeichnis hat, in dem die Datei steht.

-i

Fragt vor dem löschen jeder einzelnen Datei den Benutzer, ob die Datei wirklich gelöscht werden soll.

 

2.4             Dateiverweise (Links) anlegen

ln [unix:-s] <Dateiname> <Linkname> 
Þ  Die Option "-s" erzeugt eine "symbolischen" Link. Dieser hat immer die vollen Zugriffsrechte. Es zählen jedoch die Rechte der ursprünglichen Datei. Wir die Datei verschoben, wird der "Link" nicht angepaßt.

Þ  Ein "normaler" Link hat immer die Zugriffsrechte der Ursprungsrechte der Datei. Wird die Datei verschoben, wird der Link angepaßt. Wird entweder der Link oder die Datei gelöscht, wird nur die Anzahl der Inodes gemindert (siehe ls) 

2.5             Zugriffsrechte ändern

Der Befehl "chmod" hat 2 mögliche Formate: 
chmod <Oktalzahl> <Dateien> Beispiel:
 
chmod 755 datei1 # User rwx, Group r-x, Other r-x

oder
 
chmod <wer> <darf> <was> <Dateien> Beispiel:
 
chmod u+w datei1 # erteilt user Schreibrecht, andere Rechte bleiben unberührt. 

2.6             Dateien / Verzeichnisse kopieren / verschieben

cp <Verzeichnis||quelldatei[unix:en]> <zieldatei> 
Kopiert die angegebenen Quelldateien oder Quellverzeichnisse zum Zielverzeichnis. Das Ziel muß ein Verzeichnis sein. Soll in das aktuelle Verzeichnis kopiert werden, so ist hierfür ein "." einzugeben. Durch die Option "-r" werden alle Unterverzeichnisse incl. Dateien ebenfalls kopiert  
WICHTIG: Gegenüber dem MS-DOS Befehl copy besteht u.a. der Unterschied, daß die Zieldateien mit dem aktuellen Systemdatum versehen werden - nicht das Zugriffsdatum der Quelldatei ! Die Zugriffsrechte/Eigentumsrechte der Zieldateien hängen u.a. davon ab, ob vorhandene Dateien überschrieben werden. In diesem Fall bleiben diese erhalten, sonst werden Sie durch den Befehl "umask" bestimmt. 
mv <Verzeichnis||quelldatei[unix:en]> <ziel> 
Wirkt prinzipiell wie der cp-befehl, die Quelldateien werden jedoch gelöscht (sofern Berechtigung, siehe Befehl rm). Der Befehl kann auch zum Umbenennen von Dateien/Verzeichnissen verwendet werden. Sind mehrere Quelldateien angegeben worden, muß <ziel> ein Verzeichnis sein. 

2.7             Komprimieren / Archivieren

compress <datei[unix:en]>    # Dateiendung .Z wird angefügt

uncompress <datei[unix:en]>  # wird wieder expandiert. 
tar -cf <Archivname> <datei[unix:en]> # Dateien ins Archiv

tar -xf <Archivname>             # Dateien aus Archiv holen

tar -tf <Archivname>             # Inhalt des Archivs zeigen

Þ  durch den Parameter "z" werden die Dateien gleichzeitig komprimiert  

2.8             Inhalte von Dateien anzeigen

cat <Datei[unix:en]>    # zeigt den Inhalt der Datei[unix:en] an

pg <Datei[unix:en]>     # zeigt den Inhalt der Datei[unix:en] seitenweise an.

     ==> unter LINUX ist dies das Kommando "more" 
Þ  Wie viele andere Befehle auch, können "cat" und "pg" sowohl von Standardeingabe lesen, als auch Dateien aus der Parameterliste lesen. 

2.9             Dateien suchen / durchsuchen

find <Startverzeichnis> <Bedingung> <Aktion> 
Hierdurch können Dateien, die eine Bedingung erfüllen, gefunden werden. 
Als Bedingung kann beispielsweise angegeben werden: 

-name dateiname

Datei muß den angegebenen Namen besitzen.

-user Logname

Die Datei gehört dem angegebenen Benutzer

-inum Nummer

Die Datei muß die Inode-Nummer haben.

-perm Zugriffsrechte

Die Datei muß die Zugriffsrechte haben.

-size Größe

Die Datei muß die angegebene Größe haben. (z.B. +1000 bedeutet größer als 1000 Blöcke á 512 Byte)

-atime

Accesstime, Zeitpunkt des letzten Zugriffs.

-mtime

Modifytime, Zeitpunkt der letzten Änderung.


Die einzelnen Bedingungen können mit den logischen Grundver­knüpfungen NOT (!), AND (-a) und OR (-o) verkettet werden. 
Als Aktion kann angegeben werden:

-print

Der Name jeder gefundenen Datei wird ausgegeben.

-exec Befehl {} \;

Der Befehl wird mit jeder gefundenen Datei ausgeführt. in den {} wird der Name der gefundenen Datei eingetragen. Durch \; wird das Ende der Aktion angezeigt. Bis dahin können auch mehrere Befehle angegeben werden.

-ok Befehl {} \;

Wie vor, vor jeder Ausführung des Befehls wird der Benutzer gefragt.


grep <Suchmuster> <Datei[unix:en]> 
Sucht in den Dateien nach dem Suchmuster und gibt jede Zeile aus, die das Suchmuster enthält. Die Option "-v" gibt alle Zeilen aus, die das Suchmuster nicht enthalten.

2.10        Nützliches Zubehör: Zeichenketten umwandeln, Zählfunktionen

cut  #Entnimmt aus einer Zeichenkette eine Teilmenge v. Zeichen

wc   #Zeilen, Zeichen oder Wörter zählen

tr   #Ersetzt Zeichen innerhalb einer Zeichenkette

expr #Berechnet numerische Ausdrücke

tail #Die letzten Zeilen einer Datei anzeigen

tee  #Teilung der Standardausgabe in eine Datei und auf das Terminal 
sed, awk #Umfangreiche Tools zur automatisierten Bearbeitung von Textdateien.