Mini Tricks
Auf dieser Seiten werden kleinere Tricks auf Kommandozeilenebene gezeigt, die man durchaus mal gebrauchen kann.
Contents
- Wie bekomme ich heraus, ob der verwendete Prozessor ein 32Bit oder 64 Bit ist?
- Wie filtere ich Kommentarzeilen aus einer Datei und speichere sie danach in einer neuen Datei?
- Einfaches Umbenennen mehrerer Dateien - per regulärem Ausdruck
- Einfaches Umbenennen mehrerer Dateien - per beliebigem Editor
- Dateien von GROSS nach kleinbuchstaben umbenennen
- Schnellzugriff auf Debian-Changelogs / Changelogs
- Num Lock, Caps Lock und Scroll Lock - (de-)aktiviert starten
- Größe von Standard-Datentypen ermitteln (C++)
- Apt-Key adder
- Atomzeit abrufen
- System downgraden
- (IPtables-)Kernelmeldung auf Konsole unterdrücken
1. Wie bekomme ich heraus, ob der verwendete Prozessor ein 32Bit oder 64 Bit ist?
dazu einfach auf einer Konsole folgenden Befehl eingeben:
user@debian$ getconf LONG_BIT
- gibt entweder 32 oder 64 aus
Die Ausgabe hier ist so nicht zuverlässig. Bei einem 64bit Prozessor und laufendem 32bit Betriebssystem lautet die Ausgabe auch 32. Die Ausgabe von cat /proc/cpuinfo ist hier empfehlenswerter.
2. Wie filtere ich Kommentarzeilen aus einer Datei und speichere sie danach in einer neuen Datei?
dazu einfach in einer Konsole folgendes eingeben:
user@debian$ egrep -v '^#|^$' eingabedatei > ausgabedatei
wobei eingabedatei die Datei mit den Kommentaren ist und ausgabedatei die Datei ohne Kommentare wird.
3. Einfaches Umbenennen mehrerer Dateien - per regulärem Ausdruck
# massf2 v.1 by oenne (07.07.2004) echo Zu ersetzende Zeichenfolge eingeben read suchausdruck echo "Ersetzende Zeichenfolge eingeben" read ersetzungsausdruck echo "Zu verändernde Dateien angeben" read dateien rename "s/$suchausdruck/$ersetzungsausdruck/ig" $dateien exit 0
Dann das Ganze in den Editor deiner Wahl kopieren, als massf2 speichern, chmod 755 auf die Datei ausführen und sie nach /usr/bin kopieren. Jetzt brauchst du zum Umbenennen größerer Dateimengen nur noch massf2 in die Konsole tippen.
4. Einfaches Umbenennen mehrerer Dateien - per beliebigem Editor
Dafür gibt es immv, das dort auch als Debianpaket verfügbar ist.
immv [options] FILES
Die Dateinamen der übergebenen Dateien werden an einen Texteditor (standardmäßig $EDITOR, per Option --editor anpassbar) übergeben. Dort können diese angepasst werden. Beim Speichern werden die Änderungen an den Dateinamen durchgeführt. Die umzubenennenden Dateien können dabei beliebig über das Dateisystem verstreut sein.
Besonders praktisch für umfangreichere Änderungen, die per regulärem Ausdruck zu unhandlich wären.
5. Dateien von GROSS nach kleinbuchstaben umbenennen
Dafür gibt es mmv aus dem gleichnamigen Paket. Es sorgt sich auch um Leer-Sonderzeichen:
mmv -v "*" "#l1"
6. Schnellzugriff auf Debian-Changelogs / Changelogs
Um auf ner Konsole schnell mal die Changelogs eines Paketes zu checken reichen folgende Aliasdefinitionen in der ~/.bashrc:
# View changelog
function vchl
{
for i in changelog.gz ChangeLog.gz CHANGELOG.gz ChangeLog changelog CHANGELOG
do test -f /usr/share/doc/$1/$i && zless /usr/share/doc/$1/$i && break
done
}
# View Debian changelog
function vdchl
{
zless /usr/share/doc/$1/changelog.Debian.gz
} um dann mit vchl PAKETNAME bzw. vdchl PAKETNAME die Logs anzusehen.
7. Num Lock, Caps Lock und Scroll Lock - (de-)aktiviert starten
Wenn man sich nach jedem Neustart ärgert, dass der "Num Lock"-Status wieder nicht stimmt, könnte folgende Eintragung in der Datei /etc/init.d/rc helfen
# Set NumLock to "on" for all TTYs
INITTY=/dev/tty[1-8]
for tty in $INITTY; do
setleds -D +num < $tty
done Wenn man auch noch den Status von "Caps Lock" und "Scroll Lock" ändern will, kann man das hier [wiki:ManPage:setleds auch gleich mit übergeben.]
8. Größe von Standard-Datentypen ermitteln (C++)
Folgenden Quelltext z.B. als sizeofTest.cc speichern
#include <iostream>
using namespace std;
int main()
{
cout << "char " << sizeof(char) << endl;
cout << "short " << sizeof(short) << endl;
cout << "int " << sizeof(int) << endl;
cout << "long int " << sizeof(long int) << endl;
cout << "long " << sizeof(long) << endl;
cout << "long long " << sizeof(long long) << endl;
cout << "long long int " << sizeof(long long int) << endl;
cout << "void* " << sizeof(void*) << endl;
cout << "float " << sizeof(float) << endl;
cout << "double " << sizeof(double) << endl;
cout << "long double " << sizeof(long double) << endl;
return 0;
} Anschließend kompilieren und ausführen
user@debian$ g++ -o sizeofTest sizeofTest.cc user@debian$ ./sizeofTest
9. Apt-Key adder
Einfaches Script zum adden von GPG-Keys in Apt.
#!/bin/bash
echo "Gpg-Key-Adder"
if [ -z $1 ]
then
echo "Geben Sie den hinzuzufügenden Schlüssel an! Aufruf mit 'gka' {Schlüssel}"
exit
else
echo "Schlüssel $1 wird hinzugefügt"
fi
gpg --keyserver wwwkeys.eu.pgp.net --recv-keys $1
gpg --export $1|apt-key add -Das Script einfach in den bevorzugten Editor kopieren, abspeichern (z.B. unter dem Namen gka) und mit
chmod 755 gka
ausführbar machen. Der Aufruf erfolgt dann z.B. so
./gka 1F41B907
10. Atomzeit abrufen
Ermittelt die genaue Atom-Zeit in UTC ohne NTP-Client auf dem eigenen Rechner
netcat time.nist.gov 13
11. System downgraden
Um z.B. von Etch auf Sarge downzugraden muss man folgendes machen:
vi /etc/apt/preferences
Package: * Pin: release v=3.1* Pin-Priority: 1001
In der sources.list muss dann natürlich noch sarge eingetragen werden. Nach einem "apt-get update" downgraded man mit "apt-get dist-upgrade"
12. (IPtables-)Kernelmeldung auf Konsole unterdrücken
Wenn Meldungen von IPtables auf die Konsole geschrieben werden, dann helfen folgende Konsolenkommandos um das zu beheben. Die Meldungen findet man dann in /var/log/syslog.
echo "kernel.printk = 4 4 1 7" >> /etc/sysctl.conf sysctl -p
alternativ:
# echo "kernel/printk=2 4 1 7" >> /etc/sysctl.conf # /sbin/sysctl -p /etc/sysctl.conf