Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort
Leitfaden für die Nutzung des Buchs und der beiliegenden DVDs
Das Terminal – sinnvoll oder überflüssig?
1 Die Wurzeln von Ubuntu
2 Was ist Ubuntu?
3 Die Versionen im Detail
4 Daten sichern, migrieren und synchronisieren
5 Die Installation
6 Erste Schritte
7 Kubuntu
8 Programme und Pakete installieren
9 Internet und E-Mail
10 Office
11 Grafik und Bildbearbeitung
12 Multimedia
13 Programmierung und Design
14 Software- und Paketverwaltung
15 Architektur
16 Backup und Sicherheit
17 Desktop-Virtualisierung
18 Serverinstallation
19 Administration und Monitoring
20 Netzwerke
21 LAN-Server – im Firmennetzwerk oder als Multimediazentrale
22 Der Server im Internet
23 Servervirtualisierung mit KVM
24 Servervirtualisierung mit Xen
25 Hilfe
26 Befehlsreferenz
A Mark Shuttleworth
Stichwort

Download:
- ZIP, ca. 50,6 MB
Buch bestellen
Ihre Meinung?

Spacer
 <<   zurück
Ubuntu GNU/Linux von Marcus Fischer
Das umfassende Handbuch, aktuell zu Ubuntu 11.04 »Natty Narwhal«
Buch: Ubuntu GNU/Linux

Ubuntu GNU/Linux
geb., mit 2 DVDs
1118 S., 39,90 Euro
Galileo Computing
ISBN 978-3-8362-1765-1
Pfeil 26 Befehlsreferenz
  Pfeil 26.1 Dateiorientierte Kommandos
    Pfeil 26.1.1 bzcat – Ausgabe von bzip2-komprimierten Dateien
    Pfeil 26.1.2 cat – Dateien nacheinander ausgeben
    Pfeil 26.1.3 chgrp – Gruppe ändern
    Pfeil 26.1.4 cksum/md5sum/sum – Prüfsummen ermitteln
    Pfeil 26.1.5 chmod – Zugriffsrechte ändern
    Pfeil 26.1.6 chown – Eigentümer ändern
    Pfeil 26.1.7 cmp – Dateien miteinander vergleichen
    Pfeil 26.1.8 comm – zwei sortierte Textdateien vergleichen
    Pfeil 26.1.9 cp – Dateien kopieren
    Pfeil 26.1.10 csplit – Zerteilen von Dateien
    Pfeil 26.1.11 cut – Zeichen oder Felder aus Dateien schneiden
    Pfeil 26.1.12 diff – Vergleichen zweier Dateien
    Pfeil 26.1.13 diff3 – Vergleich von drei Dateien
    Pfeil 26.1.14 dos2unix – Dateien umwandeln
    Pfeil 26.1.15 expand – Tabulatoren in Leerzeichen umwandeln
    Pfeil 26.1.16 file – den Inhalt von Dateien analysieren
    Pfeil 26.1.17 find – Suche nach Dateien
    Pfeil 26.1.18 fold – einfaches Formatieren von Dateien
    Pfeil 26.1.19 head – Anfang einer Datei ausgeben
    Pfeil 26.1.20 less – Datei(en) seitenweise ausgeben
    Pfeil 26.1.21 ln – Links auf eine Datei erzeugen
    Pfeil 26.1.22 ls – Verzeichnisinhalt auflisten
    Pfeil 26.1.23 more – Datei(en) seitenweise ausgeben
    Pfeil 26.1.24 mv – Datei(en) verschieben oder umbenennen
    Pfeil 26.1.25 nl – Datei mit Zeilennummer ausgeben
    Pfeil 26.1.26 od – Datei(en) hexadezimal oder oktal ausgeben
    Pfeil 26.1.27 rm – Dateien und Verzeichnisse löschen
    Pfeil 26.1.28 sort – Dateien sortieren
    Pfeil 26.1.29 split – Dateien in mehrere Teile zerlegen
    Pfeil 26.1.30 tac – Dateien rückwärts ausgeben
    Pfeil 26.1.31 tail – Ende einer Datei ausgeben
    Pfeil 26.1.32 tee – Ausgabe duplizieren
    Pfeil 26.1.33 touch – Zeitstempel verändern
    Pfeil 26.1.34 tr – Zeichen ersetzen
    Pfeil 26.1.35 type – Kommandos klassifizieren
    Pfeil 26.1.36 umask – Datei-Erstellungsmaske ändern
    Pfeil 26.1.37 uniq – doppelte Zeilen nur einmal ausgeben
    Pfeil 26.1.38 wc – Zeilen, Wörter und Zeichen zählen
    Pfeil 26.1.39 whereis – Suche nach Dateien
    Pfeil 26.1.40 zcat, zless, zmore – Ausgabe von zip-Dateien
  Pfeil 26.2 Verzeichnisorientierte Kommandos
    Pfeil 26.2.1 basename – Dateianteil eines Pfadnamens
    Pfeil 26.2.2 cd – Verzeichnis wechseln
    Pfeil 26.2.3 dirname – Verzeichnisanteil eines Pfadnamens
    Pfeil 26.2.4 mkdir – ein Verzeichnis anlegen
    Pfeil 26.2.5 pwd – aktuelles Arbeitsverzeichnis ausgeben
    Pfeil 26.2.6 rmdir – ein leeres Verzeichnis löschen
  Pfeil 26.3 Verwaltung von Benutzern und Gruppen
    Pfeil 26.3.1 exit, logout – eine Session oder Sitzung beenden
    Pfeil 26.3.2 finger – Informationen zu Benutzern abfragen
    Pfeil 26.3.3 groupadd etc. – Gruppenverwaltung
    Pfeil 26.3.4 groups – Gruppenzugehörigkeit ausgeben
    Pfeil 26.3.5 id – eigene Benutzer- und Gruppen-ID ermitteln
    Pfeil 26.3.6 last – An- und Abmeldezeit eines Benutzers
    Pfeil 26.3.7 logname – Name des aktuellen Benutzers
    Pfeil 26.3.8 newgrp – Gruppenzugehörigkeit wechseln
    Pfeil 26.3.9 passwd – Passwort ändern oder vergeben
    Pfeil 26.3.10 useradd/adduser etc. – Benutzerverwaltung
    Pfeil 26.3.11 who – eingeloggte Benutzer anzeigen
    Pfeil 26.3.12 whoami – Namen des aktuellen Benutzers anzeigen
  Pfeil 26.4 Programm- und Prozessverwaltung
    Pfeil 26.4.1 at – Zeitpunkt für ein Kommando festlegen
    Pfeil 26.4.2 batch – ein Kommando später ausführen lassen
    Pfeil 26.4.3 bg – einen Prozess im Hintergrund fortsetzen
    Pfeil 26.4.4 cron/crontab – Programme zeitgesteuert ausführen
    Pfeil 26.4.5 fg – Prozesse im Vordergrund fortsetzen
    Pfeil 26.4.6 jobs – Anzeigen von im Hintergrund laufenden Prozessen
    Pfeil 26.4.7 kill – Signale an Prozesse mit Nummer senden
    Pfeil 26.4.8 killall – Signale an Prozesse mit Namen senden
    Pfeil 26.4.9 nice – Prozesse mit anderer Priorität ausführen
    Pfeil 26.4.10 nohup – Prozesse nach dem Abmelden fortsetzen
    Pfeil 26.4.11 ps – Prozessinformationen anzeigen
    Pfeil 26.4.12 pgrep – Prozesse über ihren Namen finden
    Pfeil 26.4.13 pstree – Prozesshierarchie in Baumform ausgeben
    Pfeil 26.4.14 renice – Priorität laufender Prozesse verändern
    Pfeil 26.4.15 sleep – Prozesse schlafen legen
    Pfeil 26.4.16 su – Ändern der Benutzerkennung
    Pfeil 26.4.17 sudo – Programme als anderer Benutzer ausführen
    Pfeil 26.4.18 time – Zeitmessung für Prozesse
    Pfeil 26.4.19 top – Prozesse nach CPU-Auslastung anzeigen
  Pfeil 26.5 Speicherplatzinformationen
    Pfeil 26.5.1 df – Abfrage des Speicherplatzes für Dateisysteme
    Pfeil 26.5.2 du – Größe eines Verzeichnisbaums ermitteln
    Pfeil 26.5.3 free – verfügbaren Speicherplatz anzeigen
  Pfeil 26.6 Dateisystem-Kommandos
    Pfeil 26.6.1 badblocks – überprüft defekte Sektoren
    Pfeil 26.6.2 cfdisk – Partitionieren von Festplatten
    Pfeil 26.6.3 dd – Datenblöcke zwischen Devices kopieren
    Pfeil 26.6.4 dd_rescue – fehlertolerantes Kopieren
    Pfeil 26.6.5 dumpe2fs – Analyse von ext2/ext3-Systemen
    Pfeil 26.6.6 e2fsck – ein ext2/ext3-Dateisystem reparieren
    Pfeil 26.6.7 fdformat – eine Diskette formatieren
    Pfeil 26.6.8 fdisk – Partitionieren von Speichermedien
    Pfeil 26.6.9 fsck – Reparieren und Überprüfen
    Pfeil 26.6.10 mkfs – Dateisystem einrichten
    Pfeil 26.6.11 mkswap – eine Swap-Partition einrichten
    Pfeil 26.6.12 mount, umount – Dateisysteme an- oder abhängen
    Pfeil 26.6.13 parted – Partitionen anlegen etc.
    Pfeil 26.6.14 swapon, swapoff – Swap-Speicher (de-)aktivieren
    Pfeil 26.6.15 sync – gepufferte Schreiboperationen ausführen
  Pfeil 26.7 Archivierung und Backup
    Pfeil 26.7.1 bzip2/bunzip2 – (De-)Komprimieren von Dateien
    Pfeil 26.7.2 cpio, afio – Dateien archivieren
    Pfeil 26.7.3 ccrypt – Dateien verschlüsseln
    Pfeil 26.7.4 gzip/gunzip – (De-)Komprimieren von Dateien
    Pfeil 26.7.5 mt – Streamer steuern
    Pfeil 26.7.6 tar – Dateien und Verzeichnisse archivieren
    Pfeil 26.7.7 zip/unzip – (De-)Komprimieren von Dateien
    Pfeil 26.7.8 Übersicht zu den Packprogrammen
  Pfeil 26.8 Systeminformationen
    Pfeil 26.8.1 cal – zeigt einen Kalender an
    Pfeil 26.8.2 date – Datum und Uhrzeit
    Pfeil 26.8.3 uname – Rechnername, Architektur und OS
    Pfeil 26.8.4 uptime – Laufzeit des Rechners
  Pfeil 26.9 Systemkommandos
    Pfeil 26.9.1 dmesg – letzte Kernel-Boot-Meldungen
    Pfeil 26.9.2 halt – alle laufenden Prozesse beenden
    Pfeil 26.9.3 reboot – System neu starten
    Pfeil 26.9.4 shutdown – System herunterfahren
  Pfeil 26.10 Druckeradministration und Netzwerkbefehle
    Pfeil 26.10.1 arp – Ausgeben von MAC-Adressen
    Pfeil 26.10.2 ftp – Dateien übertragen
    Pfeil 26.10.3 hostname – Rechnername ermitteln
    Pfeil 26.10.4 ifconfig – Netzwerkzugang konfigurieren
    Pfeil 26.10.5 mail/mailx – E-Mails schreiben und empfangen
    Pfeil 26.10.6 netstat – Statusinformationen über das Netzwerk
    Pfeil 26.10.7 nslookup (host/dig) – DNS-Server abfragen
    Pfeil 26.10.8 ping – Verbindung zu einem anderen Rechner testen
    Pfeil 26.10.9 Die r-Kommandos (rcp, rlogin, rsh)
    Pfeil 26.10.10 ssh – sichere Shell auf einem anderen Rechner starten
    Pfeil 26.10.11 scp – Dateien per ssh kopieren
    Pfeil 26.10.12 rsync – Replizieren von Dateien und Verzeichnissen
    Pfeil 26.10.13 traceroute – Route zu einem Rechner verfolgen
  Pfeil 26.11 Benutzerkommunikation
    Pfeil 26.11.1 wall – Nachrichten an alle Benutzer verschicken
    Pfeil 26.11.2 write – Nachrichten an Benutzer verschicken
    Pfeil 26.11.3 mesg – Nachrichten zulassen oder unterbinden
  Pfeil 26.12 Bildschirm- und Terminalkommandos
    Pfeil 26.12.1 clear – Löschen des Bildschirms
    Pfeil 26.12.2 reset – Zeichensatz wiederherstellen
    Pfeil 26.12.3 setterm – Terminaleinstellung verändern
    Pfeil 26.12.4 stty – Terminaleinstellung abfragen oder setzen
    Pfeil 26.12.5 tty – Terminalnamen erfragen
  Pfeil 26.13 Onlinehilfen
    Pfeil 26.13.1 apropos – nach Schlüsselwörtern suchen
    Pfeil 26.13.2 info – GNU-Online-Manual
    Pfeil 26.13.3 man – die traditionelle Onlinehilfe
    Pfeil 26.13.4 whatis – Kurzbeschreibung zu einem Kommando
  Pfeil 26.14 Sonstige Kommandos
    Pfeil 26.14.1 alias/unalias – Kurznamen für Kommandos
    Pfeil 26.14.2 bc – Taschenrechner
    Pfeil 26.14.3 printenv/env – Umgebungsvariablen anzeigen

»Es ist des Lernens kein Ende.« Robert Schumann (1810–1856), Komponist

26 Befehlsreferenz

Was Sie in diesem Kapitel erwartet

Wie lautet noch einmal der Konsolenbefehl zum Erstellen eines symbolischen Links? Die Befehlsreferenz in diesem Kapitel fasst sämtliche relevanten Ubuntu-Kommandos zusammen.

Die vorliegende Übersicht wurde dem Buch »Shell-Programmierung« von Jürgen Wolf, erschienen bei Galileo Computing, entnommen. Wer sich tiefer in die Materie einarbeiten möchte, dem sei die Lektüre dieses Buchs ans Herz gelegt. Dieses Referenzkapitel beginnt mit einer Übersicht aller Kommandos in alphabetischer Reihenfolge, die dann im Folgenden beschrieben werden. Dabei handelt es sich im Allgemeinen um Befehle, die in einem Ubuntu-Standardsystem zur Verfügung stehen.

Benötigtes Vorwissen

Es sind grundlegende Kenntnisse im Umgang mit der Shell nötig. Die grundlegende Bedienung erlernen Sie im Abschnitt »Das Terminal«.


Kommando Bedeutung

accept

Druckerwarteschlange auf »empfangsbereit« setzen

alias

Kurznamen für Kommandos vergeben

apropos

nach Schlüsselwörtern in man-Seiten suchen

arp

Ausgeben von MAC-Adressen

at

Kommando zu einem bestimmten Zeitpunkt ausführen lassen

badblocks

Überprüft, ob ein Datenträger defekte Sektoren enthält.

basename

Gibt den Dateianteil eines Pfadnamens zurück.

batch

Kommando zu einem späteren Zeitpunkt ausführen lassen

bc

Taschenrechner

bg

einen angehaltenen Prozess im Hintergrund fortsetzen

bzcat

Ausgabe von bzip2-komprimierten Dateien

bzip2, bunzip2

(De-)Komprimieren von Dateien

cal

Zeigt einen Kalender an.

cancel

Druckaufträge stornieren

cat

Dateien nacheinander ausgeben

cdrecord

Daten auf eine CD brennen

cd

Verzeichnis wechseln

cfdisk

Partitionieren von Festplatten

chgrp

Gruppe von Dateien oder Verzeichnissen ändern

cksum, sum

eine Prüfsumme für eine Datei ermitteln

chmod

Zugriffsrechte von Dateien oder Verzeichnissen ändern

chown

Eigentümer von Dateien oder Verzeichnissen ändern

clear

Löschen des Bildschirms

cmp

Dateien miteinander vergleichen

comm

zwei sortierte Textdateien miteinander vergleichen

(un)compress

(De-)Komprimieren von Dateien

cp

Dateien kopieren

cpio

Dateien und Verzeichnisse archivieren

cron, crontab

Programme in bestimmten Zeitintervallen ausführen lassen

csplit

Zerteilen von Dateien (kontextabhängig)

cut

Zeichen oder Felder aus Dateien herausschneiden

date

Datum und Uhrzeit

dd

Datenblöcke zwischen Devices kopieren (Low Level)

df

erfragen, wie viel Speicherplatz die Filesysteme benötigen

diff

Vergleicht zwei Dateien.

diff3

Vergleicht drei Dateien.

dig

DNS-Server abfragen

dirname

Verzeichnisanteil eines Pfadnamens zurückgeben

disable

Drucker deaktivieren

dos2unix

Dateien vom DOS- ins UNIX-Format umwandeln

du

Größe eines Verzeichnisbaums ermitteln

dumpe2fs

Zeigt Informationen über ein ext2/ext3-Dateisystem an.

dvips

DVI-Dateien umwandeln in PostScript

e2fsck

Repariert ein ext2/ext3-Dateisystem.

enable

Drucker aktivieren

enscript

Textdatei umwandeln in PostScript

exit

eine Session (Sitzung) beenden

expand

Tabulatoren in Leerzeichen umwandeln

fdformat

Formatiert eine Diskette.

fdisk

Partitionieren von Festplatten

fg

einen angehaltenen Prozess im Vordergrund fortsetzen

file

den Dateityp ermitteln

find

Suchen nach Dateien und Verzeichnissen

finger

Informationen zu anderen Benutzern abfragen

fold

einfaches Formatieren von Dateien

free

verfügbaren Speicherplatz (RAM und Swap) anzeigen

fsck

Reparieren und Überprüfen von Dateisystemen

ftp

Dateien von und zu einem anderen Rechner übertragen

groupadd

eine neue Gruppe anlegen

groupdel

Löschen einer Gruppe

groupmod

Group-ID und/oder -Namen ändern

groups

Gruppenzugehörigkeit ausgeben

growisofs

Frontend für mkisofs zum Brennen von DVDs

gs

PostScript- und PDF-Dateien konvertieren

gzip, gunzip

(De-)Komprimieren von Dateien

halt

alle laufenden Prozesse beenden

hd

Datei hexadezimal oder oktal ausgeben

head

Anfang einer Datei ausgeben

hostname

Namen des Rechners ausgeben

id

eigene Benutzer- und Gruppen-ID ermitteln

ifconfig

Netzwerkzugang konfigurieren

info

GNU-Online-Manual

jobs

Anzeigen angehaltener oder im Hintergrund laufender Prozesse

killall

Signale an Prozesse mit einem Prozessnamen senden

kill

Signale an Prozesse mit einer Prozessnummer senden

last

An- und Abmeldezeit eines Benutzers ermitteln

less

Datei(en) seitenweise ausgeben

line

eine Zeile von der Standardeingabe einlesen

ln

Links auf eine Datei erzeugen

logname

Namen des aktuellen Benutzers anzeigen

logout

Beenden einer Session (Sitzung)

lpadmin

Verwaltungsprogramm für das CUPS-Print-Spooler-System

lp

Ausgabe auf dem Drucker mit dem Print-Spooler

lpc

Steuerung von Druckern

lphelp

Optionen eines Druckers ausgeben

lpmove

Druckerauftrag zu einem anderen Drucker verschieben

lpq

Druckerwarteschlange anzeigen

lpr

Dateien auf den Drucker ausgeben

lprm

Druckaufträge in der Warteschlange stornieren

lpstat

Status der Aufträge anzeigen

ls

Verzeichnisinhalt auflisten

mail

E-Mails schreiben und empfangen

man

die traditionelle Onlinehilfe für Linux

md5sum

eine Prüfsumme für eine Datei ermitteln

mesg

Nachrichten auf die Dialogstation zulassen oder unterbinden

mkdir

ein Verzeichnis anlegen

mkfs

Dateisystem einrichten

mkisofs

Erzeugt ein ISO9660/Joliet/HFS-Dateisystem.

mkreiserfs, mkreiser4

ein ReiserFS(4)-Dateisystem anlegen

mkswap

eine Swap-Partition einrichten

more

Datei(en) seitenweise ausgeben

mount

Einbinden eines Dateisystems

mt

Streamer steuern

mv

Datei(en) und Verzeichnisse verschieben oder umbenennen

netstat

Statusinformationen über das Netzwerk

newgrp

Gruppenzugehörigkeit kurzzeitig wechseln

nice

Prozesse mit anderer Priorität ausführen lassen

nl

Datei mit Zeilennummer ausgeben

nohup

Prozesse beim Beenden einer Sitzung weiterlaufen lassen

nslookup

DNS-Server abfragen (künftig ist dig zu verwenden)

od

Datei(en) hexadezimal oder oktal ausgeben

parted

Partitionen anlegen, verschieben, vergrößern oder verkleinern

passwd

Passwort ändern oder vergeben

paste

Dateien spaltenweise verknüpfen

patch

Pakete upgraden

pdf2ps

Umwandeln von PDF in PostScript

ping

Verbindung zu anderem Rechner testen

printenv

Umgebungsvariablen anzeigen

ps2ascii

Umwandeln von PostScript in ASCII

ps2pdf

Umwandeln von PostScript in PDF

ps

Prozessinformationen anzeigen

pstree

Prozesshierarchie in Baumform ausgeben

pwd

Ausgeben des aktuellen Arbeitsverzeichnisses

rcp

Dateien im Netz kopieren

rdev

Kernel-Datei verändern

reboot

alle laufenden Prozesse beenden und System neu starten

reiserfsck

Reparieren und Überprüfen von Dateisystemen

reject

Warteschlange für weitere Aufträge sperren

renice

Priorität laufender Prozesse verändern

reset

Zeichensatz für ein Terminal wiederherstellen

rlogin

auf anderem Netzrechner einloggen

rm

Dateien und Verzeichnisse löschen

rmdir

ein leeres Verzeichnis löschen

rsh

Programme auf entferntem Rechner ausführen

rsync

Replizieren von Dateien und Verzeichnissen

init

Runlevel wechseln

setterm

Terminaleinstellung verändern

shutdown

System herunterfahren

sleep

Prozesse suspendieren (schlafen legen)

sort

Dateien sortieren

split

Dateien in mehrere Teile zerlegen

ssh

eine sichere Shell auf einem anderen Rechner starten

stty

Terminaleinstellung abfragen oder setzen

su

Ändern der Benutzerkennung (ohne Neuanmeldung)

sudo

ein Programm als anderer Benutzer ausführen

swapoff

Swap-Datei oder -partition deaktivieren

swapon

Swap-Datei oder -partition aktivieren

swap

Swap-Space anzeigen

sync

alle gepufferten Schreiboperationen ausführen

tac

Dateien rückwärts ausgeben

tail

Ende einer Datei ausgeben

tar

Dateien und Verzeichnisse archivieren

tee

Ausgabe duplizieren

time

Zeitmessung für Prozesse

top

Prozesse nach CPU-Auslastung anzeigen

touch

Zeitstempel verändern

tput

Terminal- und Cursorsteuerung

traceroute

Route zu einem Rechner verfolgen

tr

Zeichen ersetzen oder Umformen von Dateien

tsort

Dateien topologisch sortieren

tty

Terminalname erfragen

type

Kommandos oder Dateien klassifizieren

umask

Dateierstellungsmaske ändern oder ausgeben

umount

Ausbinden eines Dateisystems

unalias

einen Kurznamen löschen

uname

Rechnernamen, Architektur und OS ausgeben

uniq

doppelte Zeilen einmal ausgeben

unix2dos

Dateien vom UNIX- ins DOS-Format umwandeln

uptime

Laufzeit des Rechners

useradd, adduser

einen neuen Benutzer anlegen

userdel

einen Benutzer löschen

usermod

Eigenschaften eines Benutzers ändern

wall

Nachrichten an alle Benutzer verschicken

wc

Zeichen, Wörter und Zeichen einer Datei zählen

whatis

Kurzbeschreibung zu einem Kommando

whereis

Suchen nach Dateien innerhalb von PATH

whoami

Namen des aktuellen Benutzers anzeigen

who

eingeloggte Benutzer anzeigen

write

Nachrichten an andere Benutzer verschicken

zcat

Ausgabe von gunzip-komprimierten Dateien

zip, unzip

(De-)Komprimieren von Dateien

zmore

gunzip-komprimierte Dateien seitenweise ausgeben

zless

leistungsfähigere Alternative zu zmore


Übersicht

Die Befehle werden im Folgenden nach Themenschwerpunkten geordnet besprochen:

  • Dateiorientierte Kommandos – siehe Abschnitt 26.1 auf dieser Seite
  • Verwaltung von Benutzern und Gruppen – siehe Abschnitt 26.3
  • Programm- und Prozessverwaltung – siehe Abschnitt 26.4
  • Dateisystem-Kommandos – siehe Abschnitt 26.6
  • Archivierung und Backup – siehe Abschnitt 26.7
  • Systemkommandos – siehe Abschnitt 26.9
  • Netzwerkbefehle – siehe Abschnitt 26.10
  • Benutzerkommunikation – siehe Abschnitt 26.11

Galileo Computing - Zum Seitenanfang

26.1 Dateiorientierte Kommandos  Zur nächsten ÜberschriftZur vorigen Überschrift

Die folgenden besprochenen Befehle drehen sich um die vielfältigen Möglichkeiten mit dem Umgang mit Dateien.


Galileo Computing - Zum Seitenanfang

26.1.1 bzcat – Ausgabe von bzip2-komprimierten Dateien  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit bzcat können Sie die Inhalte von bzip2-komprimierten Dateien ausgeben, ohne dass Sie hierbei die komprimierte Datei dekomprimieren müssen. Dies ist z. B. auch ein Grund, warum Sie mit einem Dateibrowser wie z. B. Nautilus den Inhalt einer komprimierten Datei sehen und sogar lesen können, obwohl Sie diese noch gar nicht dekomprimiert haben. Ansonsten funktioniert \mbox{bzcat} wie cat.


Galileo Computing - Zum Seitenanfang

26.1.2 cat – Dateien nacheinander ausgeben  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit diesem Kommando werden gewöhnlich Dateien ausgegeben. Wenn Sie cat beim Aufruf keine Dateien zum Lesen als Argument mitgeben, liest cat so lange aus der Standardeingabe, bis (Strg) + (D) (End of File) betätigt wurde.


Verwendung Bedeutung

cat file

Gibt den Inhalt von file aus.

cat file | kommando

Gibt den Inhalt von file via Pipe an die Standardeingabe von kommando weiter.

cat file1 file2 > file_all

Dateien aneinanderhängen

cat > file

Schreibt alle Zeilen, die von der Tastatur eingegeben wurden, in die Datei file, bis (Strg) + (D) betätigt wurde.



Galileo Computing - Zum Seitenanfang

26.1.3 chgrp – Gruppe ändern  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit chgrp ändern Sie die Gruppenzugehörigkeit einer Datei oder eines Verzeichnisses. Dieses Kommando bleibt somit nur dem Eigentümer einer Datei, eines Verzeichnisses oder dem Superuser vorbehalten. Als Eigentümer können Sie außerdem nur diejenigen Dateien oder Verzeichnisse einer bestimmten Gruppe zuordnen, der Sie selbst auch angehören. Wollen Sie die Gruppenzugehörigkeit aller Dateien in einem Verzeichnis mit allen Unterverzeichnissen ändern, dann bietet sich hierzu die Option -R (für »rekursiv«) an.


Galileo Computing - Zum Seitenanfang

26.1.4 cksum/md5sum/sum – Prüfsummen ermitteln  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit diesen Funktionen errechnen Sie die CRC-Prüfsumme (Cyclic Redundancy Check) und die Anzahl der Bytes (nur mit cksum) für eine Datei. Wird keine Datei angegeben, liest cksum diejenige aus der Standardeingabe, bis (Strg) + (D) betätigt wurde, und berechnet hieraus die Prüfsumme.

Vergleich zweier Dateien

Diese Kommandos werden häufig eingesetzt, um festzustellen, ob zwei Dateien identisch sind. So kann z. B. überprüft werden, ob eine Datei, die Sie aus dem Internet geladen haben, auch korrekt übertragen wurde. Voraussetzung hierfür ist natürlich, dass Sie die Prüfsumme der Quelle kennen. MD5-Prüfsummen werden häufig beim Herunterladen von Ubuntu-ISO-Abbildern eingesetzt. Ein anderer Anwendungsfall wäre das Überprüfen auf Virenbefall. Hiermit kann ermittelt werden, ob sich jemand an einer Datei zu schaffen gemacht hat:

cksum data.conf
2935371588 51 data.conf
echo Hallo >> data.conf
cksum data.conf
966396470 57 data.conf

Im obigen Beispiel sehen Sie eine Konfigurationsdatei data.conf, bei der mit cksum ein Wert berechnet wurde. Kurz darauf wurde am Ende dieser Datei ein Text angehängt und erneut cksum ausgeführt. Jetzt erhalten Sie eine andere Prüfsumme. Voraussetzung dafür, dass dieses Prinzip funktioniert, ist natürlich auch eine Datei oder Datenbank, die solche Prüfsummen zu den entsprechenden Dateien speichert.

Dabei können Sie auch zwei Dateien auf einmal eingeben, um die Prüfsummen zu vergleichen:

cksum data.conf data.conf~bak
966396470 57 data.conf
2131264154 10240 data.conf~bak

cksum ist gegenüber sum zu bevorzugen, da diese Version neuer ist und auch dem POSIX.2Standard entspricht. Beachten Sie allerdings, dass alle drei Versionen zum Berechnen von Prüfsummen (sum, cksum und md5sum) miteinander inkompatibel sind und andere Prüfsummen als Ergebnis berechnen:

sum data.conf
20121     1
cksum data.conf
966396470 57 data.conf
md5sum data.conf
5a04a9d083bc0b0982002a2c8894e406  data.conf

Noch ein beliebter Anwendungsfall von md5sum:

cd /bin; md5 'ls -R /bin' | md5

Wenn sich jetzt jemand am Verzeichnis /bin zu schaffen gemacht hat, merken Sie dies relativ schnell. Am besten lassen Sie hierbei einen cron-Job laufen und sich gegebenenfalls täglich per E-Mail benachrichtigen.


Galileo Computing - Zum Seitenanfang

26.1.5 chmod – Zugriffsrechte ändern  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit chmod setzen oder verändern Sie die Zugriffsrechte auf Dateien oder Verzeichnisse. Die Benutzung von chmod ist selbstverständlich nur dem Dateieigentümer und dem Superuser gestattet. Die Bedienung von chmod dürfte jedem Systemadministrator geläufig sein, weil es ein sehr häufig verwendetes Kommando ist. chmod kann sehr flexibel eingesetzt werden. Sie können z. B. einen numerischen Wert verwenden. Gegebenenfalls müssen Sie dem jeweiligen Befehl ein sudo voranstellen, da Sie für die Veränderung von Systemdateirechten als Administrator operieren müssen.

Die Synthax lautet chmod 755 file oder chmod 0755 file. Einfacher anzuwenden ist chmod über eine symbolische Angabe wie:

chmode u+x file

Mit dem oben genannten Befehl bekommt der User (u; Eigentümer) der Datei file das

Ausführrecht (+x) erteilt.

chmod g-x file

Damit wurde der Gruppe (g) das Ausführrecht entzogen (-x).

Wollen Sie hingegen allen Teilnehmern (a) ein Ausführrecht

erteilen, dann funktioniert dies so:

chmod a+x file

Mit chmod können Sie auch die Spezialbits setzen (SUID, SGUID oder Sticky). Wollen Sie z. B. für eine Datei das Setuid-Bit (Set User ID) setzen, funktioniert dies folgendermaßen:

chmod 4744 file

Das Setgid-Bit (Set Group ID) hingegen setzen Sie mit 2xxx. Zu erwähnen ist auch die Option -R, mit der Sie ein Verzeichnis rekursiv durchlaufen und alle Dateien, die sich darin befinden, entsprechend den neu angegebenen Rechten ändern.


Galileo Computing - Zum Seitenanfang

26.1.6 chown – Eigentümer ändern  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit chown können Sie den Eigentümer von Dateien oder Verzeichnissen ändern. Als neuen Eigentümer geben Sie entweder den Login-Namen oder die User-ID an. Name oder Zahl müssen selbstverständlich in der Datei /etc/passwd vorhanden sein. Dieses Kommando kann wiederum nur vom Eigentümer selbst oder vom Superuser aufgerufen und auf Dateien oder Verzeichnisse angewendet werden.

chown john file1 file2

Hier wird der User john Eigentümer der Dateien file1 und file2. Wollen Sie auch hier ein komplettes Verzeichnis mitsamt den Unterverzeichnissen erfassen, so können Sie wieder die Option -R verwenden. Wollen Sie sowohl den Eigentümer als auch die Gruppe einer Datei ändern, nutzen Sie folgende Syntax:

chown john:user file1 file2

Galileo Computing - Zum Seitenanfang

26.1.7 cmp – Dateien miteinander vergleichen  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit der Funktion cmp vergleichen Sie zwei Dateien Byte für Byte miteinander und erhalten die dezimale Position und Zeilennummer vom ersten Byte zurück, bei dem sich beide Dateien unterscheiden. cmp vergleicht auch Binärdateien. Sind beide Dateien identisch, erfolgt keine Ausgabe.

cmp out.txt textfile.txt
out.txt textfile.txt differieren: Byte 52, Zeile 3.

Galileo Computing - Zum Seitenanfang

26.1.8 comm – zwei sortierte Textdateien vergleichen  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit comm vergleichen Sie zwei sortierte Dateien und geben die gemeinsamen und die unterschiedlichen Zeilen jeweils in Spalten aus, wobei die zweite und dritte Spalte von einem bzw. zwei Tabulatorvorschüben angeführt werden: comm [-123] file1 file2

Unterschiede übersichtlich dargestellt

Die erste Spalte enthält die Zeilen, die nur in der Datei file1 vorkommen. Die zweite Spalte hingegen führt die Zeilen auf, die in der zweiten Datei file2 enthalten sind, und die dritte Spalte zeigt die Zeilen, die in beiden Dateien enthalten sind.

cat file1.txt
# wichtige Initialisierungsdatei
# noch eine Zeile
Hallo
 cat file2.txt
# wichtige Initialisierungsdatei
# noch eine Zeile
Hallo
 comm file1.txt file2.txt
                # wichtige Initialisierungsdatei
                # noch eine Zeile
                Hallo
 echo "Neue Zeile" >> file2.txt
 comm file1.txt file2.txt
                # wichtige Initialisierungsdatei
                # noch eine Zeile
                Hallo
        Neue Zeile
 comm –3 file1.txt file2.txt
        Neue Zeile

Nur Differenzen darstellen

In der letzten Zeile ist außerdem zu sehen, wie Sie mit dem Schalter –3 die Ausgabe der dritten Spalte ganz abschalten, um nur die Differenzen beider Dateien zu erkennen. comm arbeitet zeilenweise, weshalb hier keine Vergleiche mit binären Dateien möglich sind.

Weitere Schalterstellungen und ihre Bedeutung sind:


Verwendung Bedeutung

–23 file1 file2

Es werden nur Zeilen ausgegeben, die in file1 vorkommen.

–123 file1 file2

Es wird keine Ausgabe erzeugt.



Galileo Computing - Zum Seitenanfang

26.1.9 cp – Dateien kopieren  Zur nächsten ÜberschriftZur vorigen Überschrift


Tabelle 26.1  Den Befehl cp zum Kopieren von Dateien und Verzeichnissen haben Sie schon des Öfteren benutzt, daher folgt hier nur noch eine Auflistung der gängigsten Verwendungen.

Verwendung Bedeutung

cp file newfile

Es wird mit newfile eine Kopie von file erzeugt.

cp -p file newfile

newfile erhält dieselben Zugriffsrechte, denselben Eigentümer und Zeitstempel.

cp -r dir newdir

Es wird ein komplettes Verzeichnis rekursiv (-r) kopiert.

cp file1 file2 file3 dir

Es werden mehrere Dateien in ein Verzeichnis dir kopiert.



Galileo Computing - Zum Seitenanfang

26.1.10 csplit – Zerteilen von Dateien  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit csplit können Sie eine Datei in mehrere Teile aufteilen. Als Trennstelle kann hierbei ein Suchmuster, also auch ein regulärer Ausdruck, angegeben werden. Dabei werden aus einer Eingabedatei mehrere Ausgabedateien erzeugt, deren Inhalt vom Suchmuster abhängig gemacht werden kann. Ein Beispiel:

csplit Kapitel20.txt /Abschnitt 1/ /Abschnitt 2/ /Abschnitt 3/

Hier wird das Kapitel20.txt in vier Teile aufgeteilt. Zunächst vom Anfang bis zum »Abschnitt 1«, dann von »Abschnitt 1« bis »Abschnitt 2«, dann von »Abschnitt 2« bis »Abschnitt 3« und zu guter Letzt von »Abschnitt 3« bis »Abschnitt 4«. Hier können Sie allerdings auch einzelne Zeilen angeben, ab denen Sie eine Datei teilen wollen:

csplit -f Abschnitt Kapitel20.txt 20 40

Hier haben Sie mit der Option -f veranlasst, dass statt eines Dateinamens wie xx01, xx02, ..., xx99 eine Datei wie Abschnitt01, Abschnitt02 usw. erzeugt wird. Hier zerteilen Sie die Datei Kapitel20.txt in drei Dateien: Abschnitt01 (Zeile 1–20), Abschnitt02 (Zeile 21–40) und Abschnitt03 (Zeile 41 bis zum Ende). Sie können mit n am Ende auch angeben, dass ein bestimmter Ausdruck n-mal angewendet werden soll. Beispiel:

csplit -k /var/spool/mail/$LOGNAME /^From / {100}

Hier zerteilen Sie in Ihrer Mailbox die einzelnen E-Mails in die einzelnen Dateien xx01, xx02, ..., xx99. Jeder Brief einer E-Mail im mbox-Format beginnt mit »From«, weshalb dies als Trennzeichen für die einzelnen Dateien dient. Weil Sie wahrscheinlich nicht genau wissen, wie viele E-Mails in Ihrer Mailbox liegen, können Sie durch die Angabe einer relativ hohen Zahl zusammen mit der Option -k erreichen, dass alle E-Mails getrennt werden und dass nach einem eventuell vorzeitigen Scheitern die bereits erzeugten Dateien nicht wieder gelöscht werden.


Galileo Computing - Zum Seitenanfang

26.1.11 cut – Zeichen oder Felder aus Dateien schneiden  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit cut schneiden Sie bestimmte Teile aus einer Datei heraus. Dabei liest cut von der angegebenen Datei und gibt die Teile auf dem Bildschirm aus, die Sie als gewählte Option und per Wahl des Bereichs verwendet haben. Ein Bereich ist eine durch Kommata getrennte Liste von einzelnen Zahlen oder Zahlenbereichen. Diese Zahlenbereiche werden in der Form a-z angegeben. Lassen Sie a oder z weg, so wird hierzu der Anfang bzw. das Ende einer Zeile verwendet.


Galileo Computing - Zum Seitenanfang

26.1.12 diff – Vergleichen zweier Dateien  Zur nächsten ÜberschriftZur vorigen Überschrift

diff vergleicht den Inhalt von zwei Dateien. Da diff zeilenweise vergleicht, sind keine binären Dateien erlaubt. Ein Beispiel:

diff file1.txt file2.txt
2a3
> neueZeile

Hier wurden die Dateien file1.txt und file2.txt miteinander verglichen. Die Ausgabe 2a3 besagt lediglich, dass Sie in der Datei file1.txt zwischen Zeile 2 und Zeile 3 die Zeile »neueZeile« einfügen (a = append) müssten, damit die Datei exakt mit der Datei file2.txt übereinstimmt.

Ein weiteres Beispiel:

diff file1.txt file2.txt
2c2
< zeile2
---
> zeile2 wurde verändert

Hier bekommen Sie mit 2c2 die Meldung, dass die zweite Zeile unterschiedlich (c = change) ist. Die darauf folgende Ausgabe zeigt auch den

Unterschied dieser Zeile an. Eine sich öffnende spitze Klammer (<) zeigt file1.txt, und die sich schließende spitze Klammer bezieht sich auf file2.txt. Und eine dritte Möglichkeit, die Ihnen diff meldet, wäre:

diff file1.txt file2.txt
2d1
< zeile2

Hier will diff Ihnen sagen, dass die zweite Zeile in file2.txt fehlt (d = delete) oder gelöscht wurde. Daraufhin wird die entsprechende Zeile auch ausgegeben. Natürlich beschränkt sich die Verwendung von diff nicht ausschließlich auf Dateien. Mit der Option

-r können Sie ganze Verzeichnisse miteinander vergleichen:

diff -r dir1 dir2

Galileo Computing - Zum Seitenanfang

26.1.13 diff3 – Vergleich von drei Dateien  Zur nächsten ÜberschriftZur vorigen Überschrift

Die Funktion entspricht etwa der von diff, nur dass Sie hierbei drei Dateien Zeile für Zeile miteinander vergleichen können. Die Ausgabe von diff3 besagt Folgendes:

diff3 file1 file2 file3

Ausgabe Bedeutung

====

Alle drei Dateien sind unterschiedlich.

====1

file1 ist unterschiedlich.

====2

file2 ist unterschiedlich.

====3

file3 ist unterschiedlich.



Galileo Computing - Zum Seitenanfang

26.1.14 dos2unix – Dateien umwandeln  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit dos2unix können Sie Textdateien vom DOS- in das UNIX-Format umwandeln. Alternativ gibt es außerdem den Befehl mac2unix, mit dem Sie Textdateien vom MAC- in das UNIX-Format konvertieren können.

dos2unix file1.txt file2.txt
dos2unix: converting file file1.txt to UNIX format...
dos2unix: converting file file2.txt to UNIX format...

Galileo Computing - Zum Seitenanfang

26.1.15 expand – Tabulatoren in Leerzeichen umwandeln  Zur nächsten ÜberschriftZur vorigen Überschrift

expand ersetzt alle Tabulatoren einer Datei durch eine Folge von Leerzeichen. Standardmäßig sind dies acht Leerzeichen, allerdings kann dieser Wert explizit mit einem Schalter verändert werden. Wollen Sie z. B., dass alle Tabulatorzeichen durch nur drei Leerzeichen ersetzt werden, erreichen Sie dies folgendermaßen: expand –3 file. Allerdings erlaubt expand nicht das vollständige Entfernen von Tabulatorzeichen – sprich, ein Schalter mit –0 gibt eine Fehlermeldung zurück. Hierzu können Sie alternativ z. B. das Kommando tr verwenden.


Galileo Computing - Zum Seitenanfang

26.1.16 file – den Inhalt von Dateien analysieren  Zur nächsten ÜberschriftZur vorigen Überschrift

Das Kommando file versucht, die Art oder den Typ einer von Ihnen angegebenen Datei zu ermitteln. Hierzu führt file einen Dateisystemtest, einen Kennzahlentest und einen Sprachtest durch. Je nach Erfolg wird eine entsprechende Ausgabe des Tests vorgenommen. Der Dateisystemtest wird mit Hilfe des Systemaufrufs stat(2) ausgeführt. Dieser Aufruf erkennt viele Arten von Dateien.

Der Kennzahlentest wird anhand von festgelegten Kennzahlen durchgeführt. Diese sind meist in der Datei /etc/magic) enthalten. In dieser Datei steht beispielsweise geschrieben, welche Bytes einer Datei zu untersuchen sind und auf welches Muster man dann den Inhalt dieser Datei zurückführen kann. Am Ende erfolgt noch ein Sprachtest. Hier versucht file, eine Programmiersprache anhand von Schlüsselwörtern zu

erkennen.

cat > hallo.c
#include <stdio.h>
int main(void) {
   printf("Hallo Welt\{n}");
   return 0;
}
STRG + D
 file hallo.c
hallo.c: ASCII C program text
 gcc -o hallo hallo.c
 ./hallo
Hallo Welt
 file hallo
hallo: ELF 32-bit LSB executable, Intel 80386, ...

Galileo Computing - Zum Seitenanfang

26.1.17 find – Suche nach Dateien  Zur nächsten ÜberschriftZur vorigen Überschrift

Zum Suchen nach Dateien wird häufig auf das Kommando find zurückgegriffen. find durchsucht eine oder mehrere

Verzeichnisebenen nach Dateien mit einer bestimmten vorgegebenen Eigenschaft. Die Syntax zu find sieht so aus:

find [Verzeichnis] [-Option ...] [-Test ...] [-Aktion ...]

Die Optionen, Tests und Aktionen können Sie mit Operatoren zusammenfassen. Dabei wertet find jede Datei in den Verzeichnissen hinsichtlich der Optionen, Tests und Aktionen von links nach rechts aus, bis ein Wert unwahr ist oder die Kommandozeilenargumente zu Ende sind. Wenn kein Verzeichnis angegeben wird, wird das aktuelle Verzeichnis verwendet. Wenn keine Aktion angegeben ist, wird meistens -print (abhängig von einer eventuell angegebenen Option) für die Ausgabe auf dem Bildschirm verwendet. Hierzu einige Beispiele.

Gibt alle Verzeichnisse und Unterverzeichnisse ab dem Heimatverzeichnis aus:

find $HOME

Gibt alle Dateien mit dem Namen kapitel aus dem Verzeichnis /dokus (und dessen Unterverzeichnissen) aus:

find /dokus -name kapitel

Gibt alle Dateien aus dem Verzeichnis dokus (und dessen Unterverzeichnissen) mit dem Namen kap... aus, bei denen »you« der Eigentümer ist:

find /dokus /usr -name 'kap*' -user you

Damit suchen Sie ab dem Wurzelverzeichnis nach einem Verzeichnis (-type d = directory) mit dem Namen dok... und geben dies

auf dem Bildschirm aus:

find / -type d -name 'dok*'

Der folgende Befehl sucht leere Dateien (size 0) und löscht diese nach einer Rückfrage (-ok):

find / -size 0 -ok rm {} \;

Dieser Ausdruck gibt alle Dateien ab dem Wurzelverzeichnis aus, die in den letzten sieben Tagen verändert wurden:

find / -mtime –7

Der Befehl

find . -printf 'TY-Tm-Td:TT p n' | sort

sucht nach Dateien, die zu einem definierten Zeitpunkt verändert wurden. Das Kürzel T steht hierbei für die mtime (Modifikationszeitpunkt). Sie können hier auch C (Change Time) oder A(Access Time) verwenden. Y, m, d stehen für year, month, day, geben also die Reihenfolge der Darstellung an.


Galileo Computing - Zum Seitenanfang

26.1.18 fold – einfaches Formatieren von Dateien  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit fold können Sie Textdateien ab einer bestimmten Zeilenlänge umbrechen. Standardmäßig sind hierbei 80 Zeichen pro Zeile eingestellt. Da fold die Bildschirmspalten und nicht die Zeichen zählt, werden auch Tabulatorzeichen korrekt behandelt. Wollen Sie etwa eine Textdatei nach 50~Zeichen umbrechen, gehen Sie folgendermaßen vor:

fold –50 Kap003.txt
...
Sicherlich erscheint Ihnen das Ganze nicht sonderl
ich elegant oder sinnvoll, aber bspw. in Schleifen
eingesetzt, können Sie hierbei hervorragend alle A
rgumente der Kommandozeile zur Verarbeitung von Op
tionen heranziehen. Als Beispiel ein kurzer theoreti
scher Code-Ausschnitt, wie so etwas in der Praxis
realisiert werden kann.

Allerdings erkennen Sie an der Ausgabe, dass die Wörter einfach abgeschnitten und in der nächsten Zeile fortgeführt werden. Wollen Sie dies unterbinden, so können Sie die Option -s verwenden. Damit findet der Zeilenumbruch beim letzten Leerzeichen der Zeile statt, wenn in der Zeile ein Leerzeichen vorhanden ist.

fold -s –50 Kap003.txt
...
Sicherlich erscheint Ihnen das Ganze nicht
sonderlich elegant oder sinnvoll, aber bspw. in
Schleifen eingesetzt, können Sie hierbei
hervorragend alle Argumente der Kommandozeile zur
Verarbeitung von Optionen heranziehen. Als Beispiel
ein kurzer theoretischer Code-Ausschnitt, wie so
etwas in der Praxis realisiert werden kann.

Ein recht typischer Anwendungsfall ist es, Text für eine E-Mail zu formatieren:

fold -s –72 text.txt | mail -s "Betreff" name@host.de

Galileo Computing - Zum Seitenanfang

26.1.19 head – Anfang einer Datei ausgeben  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit der Funktion head geben Sie immer die ersten Zeilen einer Datei auf dem Bildschirm aus. Standardmäßig werden dabei die ersten zehn Zeilen ausgegeben. Wollen Sie selbst bestimmen, wie viele Zeilen vom Anfang der Datei ausgegeben werden sollen, können Sie dies explizit mit -n angeben:

head –5 file

Hiermit erscheinen die ersten fünf Zeilen von file auf dem Bildschirm.


Galileo Computing - Zum Seitenanfang

26.1.20 less – Datei(en) seitenweise ausgeben  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit less geben Sie eine Datei seitenweise auf dem Bildschirm aus. Der Vorteil von less gegenüber more ist, dass Sie mit less auch zurückblättern können. Da less von der Standardeingabe liest, ist so auch eine Umleitung eines anderen Kommandos mit einer Pipe möglich. Mit der Leertaste blättern Sie eine Seite weiter, und mit (B) können Sie jeweils eine Seite zurückblättern. Die meisten less-Versionen bieten außerdem das Scrollen nach unten oder oben mit den Pfeiltasten an. Mit (Q) wird less beendet. less bietet außerdem eine Unmenge von Optionen und weiteren Features an, über die

Sie sich durch Drücken von (H) informieren können.


Galileo Computing - Zum Seitenanfang

26.1.21 ln – Links auf eine Datei erzeugen  Zur nächsten ÜberschriftZur vorigen Überschrift

Wenn eine Datei erzeugt wird, werden im Verzeichnis der Name, ein Verweis auf einen Inode, die Zugriffsrechte, der Dateityp und gegebenenfalls die Anzahl der belegten Blöcke eingetragen. Mit ln wiederum wird ein neuer Eintrag im Verzeichnis abgelegt, der auf den Inode einer existierenden Datei zeigt. Man spricht dabei von einem Hardlink. Er wird standardmäßig ohne weitere Angaben angelegt. Es ist allerdings nicht möglich, diese Hardlinks über Dateisystemgrenzen hinweg anzulegen.

Hierzu müssen Sie einen symbolischen Link mit der Option -s erzeugen:

ln -s filea fileb

Damit haben Sie einen symbolischen Link auf die bestehende Datei filea mit dem Namen fileb angelegt. Wollen Sie hingegen einen Hardlink auf die bestehende Datei filea mit dem Namen fileb anlegen, so gehen Sie wie folgt vor:

ln filea fileb

Galileo Computing - Zum Seitenanfang

26.1.22 ls – Verzeichnisinhalt auflisten  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit ls wird der Inhalt eines Verzeichnisses auf dem Dateisystem angezeigt. Wer sich den Inhalt eines Verzeichnisses inklusive versteckter Dateien anzeigen lassen möchte, verwendet folgende Option:

ls -lah <Verzeichnisname>

Tipp 302: Tests auf harte Links

Man kann wie folgt überprüfen, ob zwei Dateien dieselbe Datei mit zwei harten Links sind:

ls -li <Datei1> <Datei2>



Galileo Computing - Zum Seitenanfang

26.1.23 more – Datei(en) seitenweise ausgeben  Zur nächsten ÜberschriftZur vorigen Überschrift

more wird genauso eingesetzt wie less, und zwar zum seitenweisen Lesen von Dateien. Allerdings bietet less gegenüber more erheblich mehr Features und Funktionalitäten an.


Galileo Computing - Zum Seitenanfang

26.1.24 mv – Datei(en) verschieben oder umbenennen  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit mv können Sie eine oder mehrere Dateien oder Verzeichnisse verschieben oder umbenennen.


Verwendung Bedeutung

mv file filenew

eine Datei umbenennen

mv file dir

eine Datei in ein Verzeichnis verschieben

mv dir dirnew

ein Verzeichnis in ein anderes Verzeichnis verschieben



Galileo Computing - Zum Seitenanfang

26.1.25 nl – Datei mit Zeilennummer ausgeben  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit nl geben Sie die Zeilen einer Datei mit ihrer Nummer auf dem Bildschirm aus. Dabei ist nl nicht nur ein »dummer« Zeilenzähler, sondern er kann die Zeilen einer Seite auch in einen Header, einen Body und einen Footer unterteilen und in unterschiedlichen Stilen nummerieren.

ls | nl -w3 -s') '
  1) abc
  2) bin
  3) cxoffice
  4) Desktop
  5) Documents
  6) file1.txt
...

Wenn Sie mehrere Dateien verwenden, beginnt die Nummerierung allerdings nicht mehr neu, sondern es werden mehrere Dateien wie eine behandelt. Die

Zeilennummer wird nicht zurückgesetzt. Ein weiteres Beispiel:

nl hallo.c -s' : ' > hallo_line
cat hallo_line
     1 : #include <stdio.h>
     2 : int main(void) {
     3 :    printf("Hallo Welt\{n}");
     4 :    return 0;
     5 : }

Mit der Option -s (optional) geben Sie das Zeichen an, das zwischen der Zeilennummer und der eigentlichen Zeile stehen soll.


Galileo Computing - Zum Seitenanfang

26.1.26 od – Datei(en) hexadezimal oder oktal ausgeben  Zur nächsten ÜberschriftZur vorigen Überschrift

od liest von der Standardeingabe eine Datei ein und gibt diese – Byte für Byte – formatiert und codiert auf dem Bildschirm aus.

Standardmäßig wird dabei die siebenstellige Oktalzahl in je acht Spalten zu zwei Bytes verwendet, wobei aus Gründen der Darstellung hier eine Spalte im Listing weggelassen wurde:

od file1.txt
0000000 064546 062554 035061 062572 066151 030545
0000020 030545 075072 064545 062554 005062 064546
0000040 062572 066151 031545 000012
0000047

Jede Zeile enthält in der ersten Spalte die Positionsnummer in Bytes vom Dateianfang an. Mit der Option -h erfolgt die Ausgabe in

hexadezimaler Form und mit -c in ASCII-Form.


Galileo Computing - Zum Seitenanfang

26.1.27 rm – Dateien und Verzeichnisse löschen  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit dem Kommando rm können Sie Dateien und Verzeichnisse löschen.


Verwendung Bedeutung

rm datei

Löscht eine Datei.

rm dir

Löscht ein leeres Verzeichnis.

rm -r dir

Löscht ein Verzeichnis rekursiv.

rm -rf dir

Erzwingt rekursives Löschen (ohne Warnung).



Galileo Computing - Zum Seitenanfang

26.1.28 sort – Dateien sortieren  Zur nächsten ÜberschriftZur vorigen Überschrift

Gewöhnlich wird sort zum Sortieren einzelner Zeilen einer Datei oder der Standardeingabe verwendet. sort kann auch Dateien daraufhin überprüfen, ob diese sortiert sind, und mehrere sortierte oder auch unsortierte Dateien zu einer sortierten zusammenfügen. Ohne Angabe einer Option sortiert sort eine Datei zeilenweise in alphabetischer Reihenfolge:

sort kommandos.txt
a2ps – Textdatei umwandeln in PostScript
accept – Druckerwarteschlange empfangsbereit setzen
afio – Ein cpio mit zusätzlicher Komprimierung
alias – Kurznamen für Kommandos vergeben
...
 ls | sort
abc
bin
cxoffice
Desktop
Documents
...

Häufig verwendete Optionen zum Sortieren mit sort sind in der folgenden Tabelle aufgeführt.


Option Bedeutung

-n

Sortiert eine Datei numerisch.

-f

Unterscheidet nicht zwischen Klein- und Großbuchstaben.

-r

Sortiert nach Alphabet in umgekehrter Reihenfolge.

-n -r

Sortiert numerisch in umgekehrter Reihenfolge.

-c

Überprüft, ob die Dateien bereits sortiert sind. Wenn nicht, wird mit einer Fehlermeldung und dem Rückgabewert 1 abgebrochen.

-u

Gibt keine doppelt vorkommenden Zeilen aus.


Alternativ gibt es hierzu das Kommando tsort, das Dateien topologisch sortiert.


Galileo Computing - Zum Seitenanfang

26.1.29 split – Dateien in mehrere Teile zerlegen  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit split teilen Sie eine Datei in mehrere Teile auf. Ohne Angabe einer Option wird eine Datei in je 1.000 Zeilen aufgeteilt. Die Ausgabe erfolgt in Dateien mit x... oder mit einem entsprechenden Präfix, wenn eines angegeben wurde:

split –50 kommandos.txt
ls x*
xaa  xab  xac  xad  xae

Die Datei können Sie folgendermaßen wieder zusammensetzen:

for file in `ls x* | sort`; do cat $file >> \
new.txt; done

Hier wurde z. B. die Textdatei kommandos.txt in je 50-zeilige Häppchen aufgeteilt. Wollen Sie den Namen der neu erzeugten Datei verändern, gehen Sie wie folgt vor:

split –50 kommandos.txt kommandos
ls komm*
kommandosaa  kommandosab  kommandosac
kommandosad  kommandosae  kommandos.txt

An Zielgröße anpassen

Das Kommando split wird häufig eingesetzt, um große Dateien zu splitten, die nicht auf ein einzelnes Speichermedium passen. So können Sie mit dem Suffix -b die Zeilengröße in Bytes angeben.


Galileo Computing - Zum Seitenanfang

26.1.30 tac – Dateien rückwärts ausgeben  Zur nächsten ÜberschriftZur vorigen Überschrift

Vereinfacht ausgedrückt ist tac wie cat, nur dass tac die einzelnen Zeilen rückwärts ausgibt (daher auch der rückwärts geschriebene Kommandoname). Es wird somit zuerst die letzte Zeile ausgegeben, dann die vorletzte usw. bis zur ersten Zeile.

Das folgende Beispiel erläutert dies:

cat file1.txt
file1:zeile1
file1:zeile2
file2:zeile3
tac file1.txt
file2:zeile3
file1:zeile2
file1:zeile1

Galileo Computing - Zum Seitenanfang

26.1.31 tail – Ende einer Datei ausgeben  Zur nächsten ÜberschriftZur vorigen Überschrift

tail gibt die letzten Zeilen (standardmäßig ohne Angaben die letzten zehn) einer Datei aus.

tail –3 kommandos.txt
write – Nachrichten an andere Benutzer verschicken
zcat – Ausgabe von gunzip-komprimierten Dateien
zip/unzip – (De-)Komprimieren von Dateien

Hier gibt tail die letzten drei Zeilen der Datei kommandos.txt aus. Wollen Sie eine Datei ab einer bestimmten Zeile

ausgeben lassen, gehen Sie wie folgt vor:

tail +100 kommandos.txt

Hier werden alle Zeilen ab Zeile 100 ausgegeben. Wollen Sie tail

wie tac verwenden, können Sie die Option -r verwenden:

tail -r kommandos.txt

Hiermit wird die komplette Datei zeilenweise rückwärts, von der letzten zur ersten Zeile, ausgegeben. Häufig wird auch die Option -f (follow) verwendet, die immer wieder das Dateiende ausgibt. Dadurch kann man eine Datei beim Wachsen beobachten, da jede neu hinzugekommene Zeile angezeigt wird. Natürlich lässt sich diese Option immer nur jeweils auf eine Datei gleichzeitig anwenden. Eine beliebte Anwendung in diesem Zusammenhang ist das Beobachten der Syslog-Datei /var/log/messages:

sudo tail -f /ver/log/messages

Galileo Computing - Zum Seitenanfang

26.1.32 tee – Ausgabe duplizieren  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit tee lesen Sie von der Standardeingabe und verzweigen die Ausgabe auf die Standardausgabe und -datei.


Galileo Computing - Zum Seitenanfang

26.1.33 touch – Zeitstempel verändern  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit touch verändern Sie die Zugriffs- und Änderungszeit einer Datei auf die aktuelle Zeit. Existiert eine solche Datei nicht, wird diese angelegt. Die folgende Tabelle zeigt einige Optionen zu touch und ihre jeweilige Bedeutung.


Option Bedeutung

-a

Ändert nur die Zugriffszeit.

-c

Falls eine Datei nicht existiert, wird auch keine erzeugt.

-m

Ändert nur die Änderungszeit.



Tipp 303: Dummy-Dateien erzeugen

Die folgenden Befehle erzeugen Dummy- oder leere Dateien beliebiger Größe. Dies geschieht entweder mit dd oder touch:

dd if=/dev/zero    of=<Dateiname> bs=1k count=5
dd if=/dev/urandom of=<Dateiname> bs=1M count=7
touch <Dateiname>

Der erste Befehl erzeugt eine 5 KB große, aber leere Datei. Mit dem zweiten Befehl erzeugen Sie hingegen eine 7 MB große Datei mit Zufallsinhalt und der letzte Befehl produziert eine 0 Byte große Datei.



Galileo Computing - Zum Seitenanfang

26.1.34 tr – Zeichen ersetzen  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit tr können Zeichen durch andere Zeichen ersetzt werden. Dies gilt auch für nicht druckbare Zeichen: tr str1 str2 file. Wird in der Datei file ein Zeichen aus str1 gefunden, wird es durch das entsprechende Zeichen in str2 ersetzt.


Galileo Computing - Zum Seitenanfang

26.1.35 type – Kommandos klassifizieren  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit type können Sie klassifizieren, wie die Shell den angegebenen Namen interpretieren soll, wenn Sie diesen in der Kommandozeile verwenden. type unterscheidet hierbei zwischen einem Alias, einem Built-in (Shell-Funktion), einer Datei oder einer Skriptfunktion.

type ls echo ./hallo
ls is aliased to `/bin/ls $LS_OPTIONS'
echo is a shell builtin
./hallo is ./hallo

Galileo Computing - Zum Seitenanfang

26.1.36 umask – Datei-Erstellungsmaske ändern  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit der Shell-Funktion umask setzen Sie eine Maske, mit der die Zugriffsrechte auf eine Datei oder auf Verzeichnisse direkt nach der Erzeugung durch einen von der Shell kontrollierten Prozess bestimmt werden. Die in der Maske gesetzten Bits werden bei den Zugriffsrechten für die neue Datei oder das Verzeichnis gelöscht (man sagt auch: Sie werden maskiert).


Galileo Computing - Zum Seitenanfang

26.1.37 uniq – doppelte Zeilen nur einmal ausgeben  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit uniq können Sie doppelt vorhandene Zeilen löschen. Voraussetzung ist allerdings, dass die Datei sortiert ist und die doppelten Zeilen direkt hintereinander folgen.

Das folgende Beispiel illustriert dies:

cat file1.txt
file1:zeile1
file1:zeile2
file1:zeile2
file2:zeile3
uniq file1.txt
file1:zeile1
file1:zeile2
file2:zeile3

Galileo Computing - Zum Seitenanfang

26.1.38 wc – Zeilen, Wörter und Zeichen zählen  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit wc können Sie die Zeilen, Wörter und/oder Zeichen einer Datei zählen. Ohne spezielle Optionen wird eine Zeile mit den folgenden Zahlen ausgegeben:

wc file1.txt
 4  4 52 file1.txt

Die erste Spalte enthält die Anzahl der Zeilen, gefolgt von der Anzahl der Wörter und am Ende die Anzahl der Zeichen. Einzeln können Sie dies mit der Option -l (lines = »Zeilen«), -w (words = »Wörter«) und -c (characters = »Zeichen«) ermitteln.


Galileo Computing - Zum Seitenanfang

26.1.39 whereis – Suche nach Dateien  Zur nächsten ÜberschriftZur vorigen Überschrift

Mit dem Kommando whereis wird vorwiegend in wichtigen Pfaden (meistens allen Einträgen in PATH) nach Binärdateien oder man-Dateien gesucht. whereis ist nicht so flexibel wie find, aber dafür erheblich schneller.

whereis ls
/bin/ls /usr/share/man/man1/ls.1.gz
/usr/share/man/man1p/ls.1p.gz
 whereis -b ls
/bin/ls
 whereis -m ls
/usr/share/man/man1/ls.1.gz
/usr/share/man/man1p/ls.1p.gz

Zuerst wurde der Pfad zum Programm ls ermittelt. Hierbei werden allerdings auch gleich die Pfade zu den man-Seiten mit ausgegeben. Wollen

Sie nur den Pfad zum Binärprogramm erhalten, müssen Sie die Option -b verwenden. Wünschen Sie nur den Pfad zu den man-Seiten, so

verwenden Sie die Option -m, wie im Beispiel gesehen.


Galileo Computing - Zum Seitenanfang

26.1.40 zcat, zless, zmore – Ausgabe von zip-Dateien  topZur vorigen Überschrift

Alle drei Funktionen haben dieselbe Funktionsweise wie ihre Gegenstücke ohne »z«, nur dass hiermit gzip- oder gunzip-komprimierte Dateien gelesen und ausgegeben werden können, ohne dass diese dekomprimiert werden müssen. Auf manchen Systemen gibt es mit zgrep auch eine entsprechende grep-Version.



Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.






 <<   zurück
  
  Zum Katalog
Zum Katalog: Ubuntu GNU/Linux

Ubuntu GNU/Linux
Jetzt bestellen


 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Katalog: Linux Server






 Linux Server


Zum Katalog: Linux-Server einrichten und administrieren






 Linux-Server
 einrichten und
 administrieren


Zum Katalog: Linux Hochverfügbarkeit






 Linux Hoch-
 verfügbarkeit


Zum Katalog: Linux






 Linux


Zum Katalog: Debian






 Debian


Zum Katalog: Android 3






 Android 3


Zum Katalog: GIMP






 GIMP


Zum Katalog: Webserver einrichten und administrieren






 Webserver einrichten
 und administrieren


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Galileo Press 2011
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de