Bash Tipps und Tricks

Aus Thomas-Krenn-Wiki
Zur Navigation springen Zur Suche springen

Dieser Artikel stellt einige weniger gebräuchliche Bash Funktionen und Kommandos vor, welche großteils auch in den Themengebieten der LPI Zertifizierungen enthalten sind. Bitte verwenden Sie die Feedback Funktion am Endes des Artikels, um uns weitere Geheimtipps mitzuteilen.

cd -
wechselt in das vorhergende Verzeichnis
set +o history
Bash History (.bash_history) abschalten
set -o history
Bash History wieder einschalten
apropos <keyword>
Durchsucht die man Pages
Bsp:
$ apropos telnet
cacaserver (1)       - telnet server for libcaca
telnet (1)           - user interface to the TELNET protocol
telnet.netkit (1)    - user interface to the TELNET protocol
whatis <keyword>
Zeigt die Beschreibung der man Pages an
Bsp:
$ whatis crontab
crontab (5)          - tables for driving cron
crontab (1)          - maintain crontab files for individual users (Vixie Cron)
Aufrufbar sind die beiden man pages danach mit: man crontab 5; man crontab 1
pr
Textdatei via Kommandozeile ausdrucken
nl
Zeilen nummerieren
Bsp:
$ cat test.txt | nl
     1	das ist zeile 1
     2	und das zeile 2
fmt
Formatiert Text mit einer festgelegten Breite
Bsp:
$ fmt --width=5 test.txt 
das
ist
zeile
1
und
das
zeile
2
cut -d ' ' -f1
Zeilenweise Ausgabe beschneiden
-d ... delimiter
-f1 ... Feld 1 selektiert
Bsp:
$ cut -d ' ' -f1 test.txt 
das
und
sort
sortiert eine Textdatei
-h, --human-numeric-sort
comm -123 <Datei1> <Datei2>
Vergleich von zwei sortierten Dateien
-1 ... Zeilen die nur in Datei1 vorkommen
-2 ... Zeilen die nur in Datei2 vorkommen
-3 ... Zeilen die in beiden Dateien vorkommen
uniq
entfernt doppelte Zeilen. Sinnvoll um Duplikate nach einem "sort" zu entfernen.
tr
führt Ersetzungen ("translate") durch.
Bsp:
cat test.txt | tr '[:lower:]' '[:upper:]'
DAS IST ZEILE 1
UND DAS ZEILE 2
tr
führt Ersetzungen ("translate") durch.
Bsp:
cat test.txt | tr '[:lower:]' '[:upper:]'
DAS IST ZEILE 1
UND DAS ZEILE 2
[Str]+[R]
Durchsuchen der Kommando History
history
Kommando History anzeigen
find / -iname <Datei/Verzeichnisname>
Nach Datei-/Verzeichnisnamen case-insensitiv suchen. Eine case-sensitive Suche kann mit "-name" erfolgen.
find / -type f -print0 | xargs -0 grep -i <keyword>
In allen Dateien nach Text/Keyword suchen
find -L . -type l
Gebrochene symbolische Links finden (die kein gültiges Ziel haben)
bash -x <scriptname>
Debugging von Bash-Skripten
rename
Dateien mit Regular Expressions umbenennen
Bsp.:
ls
 file-1  file-2  file-3
rename 's/-/_/' file-*
ls
 file_1  file_2  file_3
top -b -n 1 -d 2| tail -n +8 | sort -r -n -k9| head -3
Top 3 Prozesse, die die meiste CPU verbrauchen
Bsp.:
:~$ top -b -n 1 -d 2| tail -n +8 | sort -r -n -k9| head -3
 2202 gschoenb   9 -11  623m 6168 3816 S  18.8  0.2  97:32.83 pulseaudio
31256 gschoenb  20   0 22108 1444 1040 R   6.3  0.0   0:00.01 top
29316 gschoenb  20   0 1318m  48m  20m S   6.3  1.3   5:31.44 radiotray

Das könnte Sie auch interessieren

GPIO beim LES plus
SSH Key unter Windows erstellen
Windows Passwort löschen - Kennwortsperre umgehen unter Windows 10