Tools Q - T

Screenshots erstellen auf Tastendruck

Übersicht auf Arch Wiki: https://wiki.archlinux.de/title/Screenshot_erstellen

Hier die Basistools ohne Desktop-Verwandschaft:

  • scrot

  • import (Paket: imagemagick)

  • xwd (Paket: xorg-apps)

Special: Screenshots in textbasierten echten Konsolen mit fbgrab und setterm -dump …

chvt 3; sleep 2; fbgrab /home/bild.png          # tty2
# Ubuntu/sudo style: erst einen Aufruf mit sudo Authentifizierung dann
chvt 3; sleep 2; sudo fbgrab /home/bild.png          # tty2

chvt wechselt in die zweite Konsole, sleep pausiert zwei Sekunden, um den Bildaufbau auf jeden Fall abzuwarten, und fbgrab erstellt das Bild in /home/bild.png

Oder alternativ als root oder mit sudo ausführen:

setterm -dump 2 -file screenshot2.txt

SHA Prüfsummentools

Für unterschiedliche SHA-Algorithmen:

  • sha1sum

  • sha224sum

  • sha256sum

  • sha384sum

  • sha512sum

Am besten natürlich nicht nur Prüfsummen - bei relevanten ISO-Downlaods - checken, sondern am Besten auch gleich mit entsprechender Signatur überprüfen.

Beispielhafte Vorgehensweise: https://linuxmint.com/verify.php

sl

Ich mag einfach Fun in der Konsole - man tippt ständig den ls-Befehl und dann kann man sich ja auch mal mit sl vertippen.

Und dann zeigt einem die Steaming Locomotive, dass man es vielleicht etwas langsamer angehehen sollte ;-)

sl - Steaming Locomotive (Typo bei ls)

sl - Steaming Locomotive (Typo bei ls)

S.M.A.R.T.

Die SMART-Tools häufig in Paket smartmontools (und auch grafische Oberfläche gsmartcontrol) verfügbar.

In der Konsole - als einfacher Test: sudo smartctl -H /dev/sda

sudo smartctl -H /dev/sda
smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.4.0-40-generic] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

source bzw. .-Operator

Mit source (oder alternativ dem .-Operator aka Dot-Operator) laden wir Ausführkommandos in der aktuellen Shell - also ohne Subshell!

Wichtig für Neuladen der Bash-Konfig: source ~/.bashrc bzw. . ~/.bashrc

speaker-test

Ein Tool aus dem Paket alsa-utils: speaker-test -t wav -c2

Sprachausgabe (hier: Test mit WAV-Datei an 2 Channels) mit Strg + C abbrechen.

Hinweis

Bei Tests mit Hyper-V-Maschinen bedenken: No Sound!

split

Mit split kann man größere Dateien in kleinere zerlegen: split -C 4G sicherung.tar.gz DVD.

Die erzeugten Dateien heißen hier: DVD.aa, DVD.ab und so fort. Der Zusammenbau kann mit cat erfolgen.

ss

Die moderne Ausgabe für Sockets Statistics - also dem Tool netstat sehr ähnlich, das häufig auf Distros nachinstalliert werden muss.

Liste für lauschende Ports: ss -ltpn

Liste alle aktiven TCP-Sockets für IPv4: ss -4 -t -a

stat

Die Ausgaben von Statistik zu Filesystem-Einträgen.

$ stat ~/.bashrc
  Datei: /home/UserName/.bashrc
  Größe: 4149           Blöcke: 16         EA Block: 4096   Normale Datei
Gerät: 802h/2050d       Inode: 1975282     Verknüpfungen: 1
Zugriff: (0644/-rw-r--r--)  Uid: ( 1000/    UserName)   Gid: ( 1000/    UserName)
Zugriff    : 2020-07-18 19:35:13.605110813 +0200
Modifiziert: 2020-05-30 13:33:33.680894934 +0200
Geändert   : 2020-05-30 13:33:33.684894917 +0200
 Geburt    : -

tac

Genau wie cat aber eben umgekehrt - umgedrehte Reihenfolge in Ausgabe.

tail

In Zeiten moderner Journale und Loggings nicht mehr SOOO spannend - aber immer noch gut:

tail -f /var/log/syslog beobachtet die Datei real time

tar

Der Klassiker in der Konsole zum Archivieren und Packen. Aufgrund des Alters des Tools mit verwirrend vielen unterschiedlichen Aufrufkombinationen: mit und ohne -, Reihenfolge der Argumente, …

Hier meine Kurzanleitung für die tägliche Praxis mit einer ersten Übersicht über die Argumente für tar:

  • x - Extrahieren / Expand

  • c - Create / Erstellen

  • v - Verbose (dt.: geschwätzig; Infos in Konsole zeigen)

  • z - Komprimierung mit GZip

  • f - Filename / Datei

  • j - Komprimierung mit BZ2

  • C - Angabe eines Entpackziels: tar ... -C /tmp

Beispiel: Archiv eines Home-Dir erstellen (möglichst von außerhalb)

tar cvzf userxyz-$(date -I).tar.gz /home/userxyz

Archiv wiederherstellen:

tar xvzf userxyz-20200620.tar.gz (im Ordner /home)

Sicherungsarchiv entpacken zum Analysieren / einzeln Ordner/Dateien holen:

tar xvzf userxyz-20200620.tar.gz -C /tmp

tee

Gleichzeitige Ausgabe im Standardausgabekanal und Ausgabe/Umleitung in Datei: ls -l | tee verzeichnis.txt

test bzw. [ ausdruck ]

Wichtige Technik für Shell-Skripte mit ausführlichen Abfrage- und Bedingungsauswertungen. Neben einfachen Vergleichsoperatoren (-eq, -ne, -gt, -lt, …) sind vor Allem Möglichkeiten zur Abfrage auf Datei- und Ordnerebene wichtig.

  • [ -d … ] - ist Verzeichnis?

  • [ -e … ] - Datei existiert?

  • [ -f … ] - einfache Datei (File)?

  • [ -x … ] - ausführbare Datei (File)?

  • [ ! Bedingung ] - wahr/true, wenn die Bedingung nicht erfüllt ist

  • [ Bedingung1 -a Bedingung2 ] - wahr/true, wenn beide Bedingungen erfüllt sind (und / and)

  • [ Bedingung1 -o Bedingung2 ] - wahr/true, wenn mindestens eine der Bedingungen erfüllt ist (oder / or)

Die Bash kennt außerdem noch den [[ ... ]] Ausdruck, der mit Mustern wie *, regulären Mustern und den Vergleichsoperatoren && und || umgehen kann. Innerhalb von [[ ... ]] werden Variablen nicht ausgewertet!

time

Mit time kann man Ausführzeiten von Kommandos in der Shell ermitteln lassen.

Beachten: Es laufen (normalerweise) parallel noch andere Prozesse und es kann auch zu Wartezeiten bei der Abarbeitung eines Prozesse kommen.

timedatectl

Zeigt und verändert die Zeitzone des Linux-Systems - Konfiguration: /etc/localtime (Achtung: binäre Datei - kein roher Text!)

$ timedatectl
               Local time: So 2020-07-26 12:45:25 CEST
           Universal time: So 2020-07-26 10:45:25 UTC
                 RTC time: So 2020-07-26 10:45:25
                Time zone: Europe/Berlin (CEST, +0200)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

Und immer: siehe Man-Page für Argumente zum setzen von Eigenschaften.

top bzw. htop

Das Tool für die Table of Processes - in den verbesserten Varianten als htop oder glances (mit gleichnamigen Paketen) und mehr technischen Auswertungen und Fähigkeiten.

Spezielle Tools: iotop (I/O-Aktivitäten) und powertop (Energieverbrauch - bei Notebooks - analysieren)

tr

Das Trimmen von Dateien - hier wieder das Beispiel mit dem PATH:

$ echo $PATH | tr ":" "\n"
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/usr/games
/usr/local/games

tree

Die Ausgabe von Verzeichnissen als Baumstrukturen aus dem gleichnamigen Paket. Zu beachten: teils unterschiedliche Implementierungen und Argumente. Also: immer wieder die Man-Page beachten.

$ tree -d -L 1
.
├── _build
├── Chapters
├── configs
├── Pics
├── _static
└── _themes

Beispiel: nur Ordner (-d) des ersten Levels (erste Ordnerebene -L 1) ausgeben.

Tipp

Super für Dokumentationen! Einfach mittels > in Textdateien umleiten.

tty

Auf welcher Konsole befinde ich mich gerade. Bei grafischen Oberflächen siehe z.B. /dev/pts/3 oder ähnlich.

type

Herausfinden, ob ein Tool zur Shell gehört, eine selbst definierte Funktion oder ein Alias darstellt.

$ type alias
alias ist eine von der Shell mitgelieferte Funktion.
$ type jbwallpaper
jbwallpaper ist ein Alias von »/home/joeb/Bilder/wallpaper/wallpaper.sh«.
$ type whereis
whereis ist /usr/bin/whereis