verschiedene BashlösungenIch möchte eine Logoutmeldung anzeigen: echo "und Tschüss" >> ~/.bash_logout
letztes Argv aus der Bash holen: watch -n5 ls Mailwatching: watch -n 60 from Verzeichnisänderungen: watch -d ls -l Ausgabe der Konsole1 anzeigen lassen, dass ist interessant, wenn andere Benutzer auf dem rechner angemeldet sind: cat /dev/vcs1#oder /dev/vcsa1 Befehl make mit niedriger Priorität ausführen: nice -n 10 make Befehl date 50 mal aufrufen: for i in `seq 1 50`; do echo $i;date;done Zahlen von 1 bis 50 ausgeben: seq 1 50 Zahlen von 1 bis 2 in 0,1-Schritten ausgeben: seq 1 0.1 2 ton ausgeben: beep oder printf "\a" Hexzahlen ausgeben: printf %x"\n" 4711 Eingaben überwachen: script -q
Pruefen ob eine Datei existiert und lesbar ist: test -r "/etc/datei.conf" Pruefen ob Datei a.log neuer ist als Datei b.log: test a.log -nt b.log oder test a.log -nt b.log && echo "a ist neuer" || echo "b ist neuer" oder [ datei1 -nt datei2 ] ; echo $? zwei Bedingungen(schreibbar + Datei) auf eine Datei testen: [[ ( -f "datei" ) && ( -w "datei" ) ]] && echo "datei ist von mir schreibbar" Konvertiere eine Dezimalwert in einen Hexwert: printf '%x\n' 255 Konvertiere einen Hexwert in einen Dezimalwert: printf '%d\n' 0xff Alle txt-Dateien in asc umbenennen: for i in *.txt; do mv "$i" "${i/.txt}".asc;done Alle txt-Dateien mittels sed in asc umbenennen: ls *txt|sed 's/\(.*\)\.txt/mv \1.txt \1.asc/'|sh Letzten Befehl aus der History löschen: history -d $((HISTCMD-1))
Historydateien nicht erstellen: echo "unset HISTFILE" >> /etc/profile Deutsches Tastaturlayout laden: loadkeys de-latin1
oder: loadkeys de-latin1-nodeadkeys
oder nur in X: setxkbmap -model pc104 -layout de oder dauerhaft in debian festlegen: dpkg-reconfigure console-data Dateien eines Verzeichnisse in Kleinschrift umwandeln (Vorsicht bei sonst gleichen Namen:datei1,Datei1;da wird eine gelöscht): ls | awk '{print "mv "$0" "tolower($0)}' | sh alle Dateien zwischen 512 und 578 ausgeben: ls datei{512..578}.mpg die Länge eines (z.B. $PATH) Strings ausgeben: echo ${#PATH} eigene IP-Adresse in eine Variable „IP“ einlesen: IP=`ifconfig | grep Bcast|cut -d : -f2 | cut -d " " -f1` echo $IP Eine Textdatei auslesen und was mit den einzelnen Zeilen machen: for i in `cat datei.txt` ; do echo $i; done
systemweites automatisches Ausloggen nach 60 Minuten konfigurieren: export TMOUT=3600
diesen Timeout für einen einzelnen Benutzer deaktivieren: export TMOUT=0
Programmverzeichnis ermitteln: echo ${0%/*}
Programm- oder Scriptname ermitteln echo ${0##*/}
Funktionstasten mit Befehlen belegen: bind '"\e[5~":"cd .."'
<Alt>+<h>-Taste mit bind '"\eh":"history"'
<F1>-Taste mit bind '"\e[[A":"exit"'
echo -e "\E[44m" clear
ls -d /home/*/
find . -mtime -1
find $HOME/. -name *.txt -ok rm {} \;
shuf -i 100000-999999 -n 1 od -An -N2 -i /dev/urandom
while true; do myscript.sh && sleep 60; done |