04.08.2013 Aufrufe

LINUX-Zusammenfassung: Befehle in alphabetischer Reihenfolge ...

LINUX-Zusammenfassung: Befehle in alphabetischer Reihenfolge ...

LINUX-Zusammenfassung: Befehle in alphabetischer Reihenfolge ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

ZHW <strong>LINUX</strong>-Befehlszusammenfassung<br />

<strong>LINUX</strong>-<strong>Zusammenfassung</strong>: <strong>Befehle</strong> <strong>in</strong> <strong>alphabetischer</strong> <strong>Reihenfolge</strong> (unvollständig)<br />

17. Januar 2002<br />

Befehl Kommentar<br />

| (CH-Tastatur AltGr + 7) Pipel<strong>in</strong><strong>in</strong>g (Bsp. ls –l –R ¦ more List<strong>in</strong>g mit Userunterbruch nach jeder Seite)<br />

> (>> Daten am Ende anhängen) Ausgabeumleitung (Bsp. ls –l >file Leitet Ausgabe des List-Befehls <strong>in</strong>s file um)<br />

alias neu=“alt“ (Anm. unalias name) Umbenennen von Kommandos (ohne Argumente: Liste ausgeben)<br />

at 1530 wed + 1 week < script Job bei def<strong>in</strong>iertem Zeitpunkt starten und evtl. wiederholen<br />

bg %n (Anm. fg %n) Job n <strong>in</strong> Background br<strong>in</strong>gen<br />

cancel Job-Nr. Druckerjob beenden<br />

cat Inhalt anzeigen (DOS-Pendant: TYPE). Weiterer Befehl: less<br />

cd Wechseln des Work<strong>in</strong>g Directorys<br />

chgrpg group Pfadname Gruppe von Pfadname auf group setzen (SysOp / Eigentümer)<br />

chmod file u=rwx, g=rwx, o=rwx Zugriffsrechte setzen (u=user, g=group, o=other (world))<br />

chown user Pfadname Eigentümer von Pfadname auf user setzen (SysOp)<br />

clear Bildschirm löschen<br />

cp Kopieren (DOS-Pendant: COPY)<br />

cut –d[Zeichen] –f[Kolonne] Ausschneiden (-d=Delimiter) (siehe auch gawk)<br />

df Heisst Disk free und zeigt den freien Plattenspeicher an<br />

du –k / | sort -u Zeigt die Verzeichnisse der grössen nach sortiert ab / an.<br />

echo text Text ausgeben (\n erzeugt e<strong>in</strong>en Zeilenvorschub)<br />

fdisk –l Zeigt verfügbare Laufwerke an (Auch Partitionen)<br />

fg %n Job n <strong>in</strong> den Foreground br<strong>in</strong>gen<br />

f<strong>in</strong>d [start<strong>in</strong>g path] –name[file] Nach Datei suchen (Bsp. f<strong>in</strong>d /etc -name passwd)<br />

f<strong>in</strong>ger Benutzername Infos über Benutzername<br />

chmod xxx<br />

user group other<br />

r w x r w x r w x<br />

4 4 4<br />

2 2 2<br />

1 1 1<br />

Gawk –f gsub(„%3A“,“:“); datei Ersetzt <strong>in</strong> datei pro Zeile %3A durch : (ACHTUNG: gsub... sollte <strong>in</strong> e<strong>in</strong>er Datei se<strong>in</strong>)<br />

grep ‘text‘ datei Dateien nach Textmuster durchsuchen => Zeilen ausgeben<br />

grep –c ‘text‘ datei Zähle und zeige Anzahl Treffer<br />

grep –i ‘text‘ datei Ignoriere Gross- / Kle<strong>in</strong>schreibung<br />

grep –l ‘text‘ datei Nur bei Treffer Filenamen ausgeben (wichtig!!!)<br />

grep –n ‘text‘ datei Zeilennummer auch ausgeben<br />

grep –v ‘text‘ datei Invertierte Suche<br />

head Erste 10 Zeichen zeigen<br />

jobs Benutzereigene jobs anzeigen (Job Nr. PID)<br />

kill –1 oder –HUP (PID) Stop (hangup)<br />

kill –2 oder –INT (PID) Interrupt<br />

kill –3 oder –QUIT (PID) Quit<br />

kill –9 oder –KILL (PID) Blast: Vorsicht Prozess wird ‘weggeblasen‘<br />

kill –signal PID (oder %n) Signal an den Prozess PID senden (Job n killen)<br />

less datei / Suchbegriff = less sucht <strong>in</strong> datei nach Suchbegriff, mittels Q verlässt man less<br />

ln datei l<strong>in</strong>kname –s Softl<strong>in</strong>k auf File oder Directory (datei) erzeugen (ohne –s wird e<strong>in</strong> Hardl<strong>in</strong>k erzeugt)<br />

logout / exit Abmelden<br />

lp Drucken auf Default-Drucker<br />

lpstat –d ‘Name des Druckers‘ Status e<strong>in</strong>es Druckers abfragen (lpstat ohne Optionen, zeigt allg. Status an)<br />

lpstat –l Status aller Drucker abfragen<br />

ls Filelist<strong>in</strong>g im Default-Format<br />

ls –a Filelist<strong>in</strong>g, -a zeigt versteckte Files (alle Files zeigen)<br />

ls –l Filelist<strong>in</strong>g, -l zeigt Files im Longformat (mit zusätzlichen Angaben)<br />

ls –g Filelist<strong>in</strong>g, -g Gruppe anzeigen<br />

ls –R (Anm. <strong>LINUX</strong>; bash 2.0: ls –r) Filelist<strong>in</strong>g, -r listet jedes dar<strong>in</strong> enthaltene Directory auf (rekursiv)<br />

ls –s Filelist<strong>in</strong>g, -s zeigt symbolische L<strong>in</strong>ks als solche an<br />

ls –x (file enthält das Mail) Filelist<strong>in</strong>g, -x heisst: Ausgabe <strong>in</strong> mehreren Spalten<br />

mail –s “Subj“ name@popserver < file Programm (file) mit Betreff (Subj) und Empfängername (name@pop-Server) senden<br />

mail Benutzeradresse Mails schicken (Ende mit CTRL-D oder “.“)<br />

man Kommando Manualtext holen (man verlassen => Q; Page down => Space; Str<strong>in</strong>g suchen => /)<br />

man –k Stichwort man Files suchen <strong>in</strong> denen das angegebene Stichwort vorkommt (wichtig !!!)<br />

man –t Kommando Manualtext holen und auf Default-Drucker ausgeben<br />

mesg n (Anm. write) Verh<strong>in</strong>dern, dass man per Talk oder Write von anderen Benützern angepaged wird<br />

mesg y (Anm. write) Zulassen, dass man per Talk oder Write von anderen Benützern angepaged wird<br />

mkdir Neues Directory erstellen (DOS-Pendant: md)<br />

more Inhalt anzeigen, mit blättern (Beenden per Q; Page down per Space)<br />

mount device-name /dir (Anm. umount) Physikalisches Diskdrive <strong>in</strong>s Systemdirectory dir e<strong>in</strong>hängen (mount /dev/sda6 /dos)<br />

mp file Schönformatierung auf Postscript-Laserdrucker (sparc)<br />

mv Verschieben von Files (move), kann auch zum umbenennen verwendet werden<br />

passwd (Anm. yppasswd) Passwort ändern<br />

L<strong>in</strong>ux -Befehlszusammenfassung.doc Seite 1 von 3 © 2001 José Fontanil


ZHW <strong>LINUX</strong>-Befehlszusammenfassung 17. Januar 2002<br />

pc / cc / gnu Pascalcompiler / C-Compiler / GNU-C-Compiler<br />

popd (Anm. pushd) Rückkehr <strong>in</strong>s mit pushd gemerkte Directory. SuSE L<strong>in</strong>ux hat e<strong>in</strong> Alias: -<br />

pr file –2 Formatieren auf zwei Spalten pro Seite<br />

ps –l Prozesse eigener Station anzeigen (-l heisst Longformat)<br />

ps –x Alle Prozesse anzeigen<br />

pushd (Anm. popd) Gleiche Funktion wie cd, merkt sich aber das Directory (siehe auch popd) SuSE: +<br />

pwd Ausgabe des Work<strong>in</strong>g-Directorys (das Directory <strong>in</strong>dem man sich gerade bef<strong>in</strong>det)<br />

rlog<strong>in</strong> - / telnet servername (DNS / IP) Verb<strong>in</strong>dung mit e<strong>in</strong>em anderen Rechner aufbauen<br />

rm Löschen von Files (DOS-Pendant: DEL)<br />

rm –i –r Löschen, -i = <strong>in</strong>teraktiv, Abfrage mit Y/N; -r = löschen mitsamt Inhalt)<br />

rmdir Directory löschen (siehe rm –r)<br />

rusers / rwho Alle e<strong>in</strong>geloggten Benutzer im lokalen Netzwerk anzeigen<br />

script file –f 1,2,3 Protokollierung vom Benutzer, oder System, Geschriebenem (Abbruch mit CTRL-D)<br />

sort date<strong>in</strong>ame Sortiert Zeilen <strong>in</strong> e<strong>in</strong>er Datei (-f bedeutet Kolonne)<br />

tail Letzte 40 Zeichen e<strong>in</strong>er Datei anzeigen<br />

talk Benutzername Kommunikationsverb<strong>in</strong>dung zu User (Benutzername) aufbauen<br />

tee file Kopiert std<strong>in</strong> (Standard IN) <strong>in</strong> stdout und gleichzeitig zu file (siehe script)<br />

tr Str<strong>in</strong>g1 Str<strong>in</strong>g2 Ersetzt jedes im Str<strong>in</strong>g1 spezifizierte Zeichen durch Str<strong>in</strong>g2<br />

unalias neu (Anm. alias) Entfernen von umbenannten (nicht unbekannten) Kommandos<br />

umask nnn Zugriffsrechte: Standarde<strong>in</strong>stellung 777 (E<strong>in</strong>gabe = Komplement zu chmod)<br />

umount /device (Anm. mount) Unmounten (entb<strong>in</strong>den) von Devices (Bsp. umount /b<strong>in</strong>/sda6)<br />

vi / xedit / textedit / pico /edy Unix-Texteditoren (Beim vi: -r = recovery nach crash) verlassen = :q!<br />

which Zeigt Befehlslokation an (Wo ist dieser Befehl zu f<strong>in</strong>den) (Bsp. /usr/b<strong>in</strong>)<br />

who / users (Anm. rwho / rusers) Angemeldete Benutzer auf gleicher Masch<strong>in</strong>e anzeigen (siehe auch f<strong>in</strong>ger)<br />

write Benutzername (Anm. talk / mesg) Nachricht (Message) auf Bildschirm vom andern Benutzer schreiben<br />

xhost + Alle User haben Zugriff auf den X-Server<br />

xhost – Ke<strong>in</strong> User hat Zugriff auf den X-Server<br />

xterm –display lok_Rechnername:0.0 Auf Remote Rechner verwenden (Remote X-W<strong>in</strong>dow auf diesem Rechner starten)<br />

ypcat passwd Inhalt aller Benutzer und Log<strong>in</strong>-Namen anzeigen (and encrypted passwords)<br />

yppasswd (Anm. passwd) Netzwerkweites Passwort ändern<br />

SHELL-Details<br />

Shell-Defaults (Variablen) Zugriff auf Variablen immer mit vorangehängtem $-Zeichen (wie <strong>in</strong> BASIC)<br />

PATH Liste der Directories wo Kommandos gesucht werden<br />

HOME Homedirectory (nicht empfehlenswet, lieber ~ verwenden)<br />

PRINTER Default-Pr<strong>in</strong>ter (lp-Kommando)<br />

PROMPT Prompt für Eigabeaufforderung<br />

MANPATH Pfad für Help-Verzeichnisse (man files)<br />

SHELL-Variablen<br />

echo ShellVariable Listet den Inhalt der ShellVariablen auf<br />

set (Anm. <strong>LINUX</strong> (bash): export) Listet alle lokalen Shellvariablen auf, mit set Variabelnamen=Wert, Variablen setzen<br />

pr<strong>in</strong>tenv<br />

pr<strong>in</strong>tenv ist ähnlich wie set<br />

env Listet alle globalen Shellvariablen mit Inhalt auf<br />

DISPLAY Ausgabe umleiten (Bsp. DISPLAY=127.0.0.1:0.0)<br />

Spezielles<br />

CONTROL-Tasten<br />

CTRL-c Abbruch des aktuellen Tasks<br />

CTRL-z (Anm. fg / bg) Stoppen (anhalten!) des aktuellen Tasks<br />

(danach Task per fg oder bg belegen)<br />

CTRL-s (Anm. CTRL-q) List<strong>in</strong>g stoppen<br />

CTRL-q (Anm. CTRL-s) List<strong>in</strong>g freigeben<br />

CTRL-P Up<br />

CTRL-N Down<br />

CTRL-F Right<br />

CTRL-B Left<br />

CTRL-A Home<br />

CTRL-E End<br />

CTRL-d EOF (End Of File erzeugen) wird häufig zum Beenden von Anwendungen benötigt<br />

Wildcards<br />

* beliebige Zeichenfolge<br />

? genau e<strong>in</strong> beliebiges Zeichen (Platzhalter)<br />

[0-9] beliebig wählbares Zeichen aus dem Fundus der <strong>in</strong> der Klammer enthaltenen Zeichen<br />

[!a,f] beliebig wählbares Zeichen ausser den <strong>in</strong> der Klammer enthaltenen Zeichen<br />

\ Hebt Sonderbedeutung des nachfolgenden Zeichens auf<br />

Kommando& Das & bedeutet, dass das zuvor geschriebene Kommando im H<strong>in</strong>tergrund laufen soll<br />

L<strong>in</strong>ux -Befehlszusammenfassung.doc Seite 2 von 3 © 2001 José Fontanil


ZHW <strong>LINUX</strong>-Befehlszusammenfassung 17. Januar 2002<br />

Shellscripts nicht vergessen per chmod 755 die Ausführbarkeit sicherzustellen<br />

~/.cshrc Startup-File (DOS-Pendant: AUTOEXEC.BAT)<br />

~/.log<strong>in</strong> Initialisierungsscript beim Log<strong>in</strong><br />

~/.logout Aufräumarbeiten beim Logout<br />

#!/b<strong>in</strong>/sh Angabe welche Shell das Script starten soll (hier bourne shell)<br />

#!/b<strong>in</strong>/csh Angabe welche Shell das Script starten soll (hier C-shell)<br />

Shellscripts: <strong>Befehle</strong> im Text<br />

echo blablabla `date +%H:%M` blabla Hier wird <strong>in</strong> der Ausgabe (echo) e<strong>in</strong> Datum e<strong>in</strong>gefügt [` = Shift ^+SPACE]<br />

L<strong>in</strong>ux Kernel kompilieren Ins Verzeichnis /usr/src/l<strong>in</strong>ux wechseln und folgende <strong>Befehle</strong> benutzen<br />

make menuconfig Jetzt geht e<strong>in</strong> Kernelkonfigurationsmenu auf, hier alles e<strong>in</strong>stellen, saven<br />

make dep Abhängigkeiten überprüfen, aktualisieren (optional jetzt noch e<strong>in</strong> make clean)<br />

make bzlilo oder make bzimage Wenn LILO benutzt wird make zlilo, sonst make bzimage (b steht für big!)<br />

make modules modules_<strong>in</strong>stall Module kompilieren und <strong>in</strong>stallieren<br />

make clean Jetzt alles aufräumen<br />

Prozesse, Threads Genauere Infos und Library-E<strong>in</strong>b<strong>in</strong>dungen siehe BS-Praktikum 4 und -Praktikum 5<br />

ps –aux Zeigt alle Prozesse, auch Daemons (per ps –aux | grep daemon_name, wählen)<br />

top [-d x x = Aktualisierung jede x Sek] Prozesse dynamisch anzeigen (per h bekommt man e<strong>in</strong>en Help-Screen); q = quit<br />

kill –Signal PID Prozess beenden / abschiessen (Signal = z.B. 9)<br />

pid_t fork() E<strong>in</strong>en Prozess erzeugen<br />

void exit(<strong>in</strong>t status) E<strong>in</strong>en Prozess beenden ( e<strong>in</strong>b<strong>in</strong>den)<br />

pid_t getpid();<br />

PID e<strong>in</strong>es Prozesses holen<br />

pid_t getppid();<br />

PID dessen Parent-Prozesses holen<br />

pid_t getpgrp(); Prozessgruppen-ID abfragen<br />

pid_t setsid(); E<strong>in</strong>e neue Session-ID e<strong>in</strong>richten<br />

pid_t wait(<strong>in</strong>t *status); Auf die Beendigung e<strong>in</strong>es Prozesses warten (oder pid_t wait(NULL);<br />

pid_t waitpid(pid_t pid, <strong>in</strong>t *status, <strong>in</strong>t o) Wartet auf e<strong>in</strong> bestimmtes K<strong>in</strong>d (o = z.B. WNOHANG = nonblock<strong>in</strong>g wait)<br />

unsigned <strong>in</strong>t sleep (unsigned <strong>in</strong>t sec);<br />

void <strong>in</strong>t usleep (unsigned <strong>in</strong>t usec);<br />

Den aktuellen Prozess für e<strong>in</strong>e gewisse Zeit schlafen legen<br />

Verschiedene Varianten von exec() Den aktuellen Prozess mit e<strong>in</strong>em neuen Programm "überlagern"<br />

<strong>in</strong>t system(const char *shellcmd); Führt das angegebene Shell-Kommando aus<br />

clock_t times(struct tms *cpu_zeit); Zeit<strong>in</strong>formation zum Eltern- und K<strong>in</strong>dprozess abfragen<br />

<strong>in</strong>t pthread_create(pthread_t *tid, const<br />

pthread_attr_t *attr, void *(*rout<strong>in</strong>e)<br />

Erzeugung e<strong>in</strong>es POSIX-Threads<br />

(void *), void *arg);<br />

Es muss die Library e<strong>in</strong>gebunden werden.<br />

<strong>in</strong>t pthread_exit(void *status); Beenden e<strong>in</strong>es POSIX-Threads<br />

<strong>in</strong>t pthread_jo<strong>in</strong>(pthread_t th, void<br />

**status_ptr);<br />

Der e<strong>in</strong>e Thread wartet auf das Beenden e<strong>in</strong>es anderen Threads<br />

void semaphore_<strong>in</strong>it(Semaphore *s); Die Semaphore s wird <strong>in</strong>itialisiert und auf UP(green, oben) gestellt.<br />

<strong>in</strong>t semaphore_down(Semaphore *s); Die Semaphore s wird auf DOWN(red, unten) gestellt<br />

<strong>in</strong>t semaphore_up(Semaphore *s); Die Semaphore s wird auf UP(green, oben) gestellt<br />

void semaphore_destroy(Semaphore *s); Die Semaphore s wird aufgelöst und die dazugehörenden Ressourcen freigegeben<br />

<strong>in</strong>t semaphore_decrement(Semaphore *s) Der Wert der Semaphore s wird ohne zu blockieren um e<strong>in</strong>s dekrementiert<br />

L<strong>in</strong>ux -Befehlszusammenfassung.doc Seite 3 von 3 © 2001 José Fontanil

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!