<!-- Launch LXTerminal with Ctrl+Alt+T--> <keybind key="C-A-t"> <action name="Execute"> <command>lxterminal</command> </action> </keybind> zu ~/.config/openbox/lxde-rc.xml hinzuzfügen und openbox --reconfigure
Fenster verkleinern, maximieren mit Alt+F10, minimieren mit Alt+F9 und wiederherstellen mit Alt+F8
<!-- Launch LXTerminal with Alt+F10--> <keybind key="A-F10"> <action name="ToggleMaximize"/> </keybind> <!-- Launch LXTerminal with Alt+F9--> <keybind key="A-F9"> <action name="Iconify"/> </keybind> <!-- Launch LXTerminal with Alt+F8--> <keybind key="A-F8"> <action name="NextWindow"> <iconified>yes</iconified> <finalactions> <action name="Uniconify"/> <action name="Focus"/> <action name="Raise"/> </finalactions> </action> </keybind> zu ~/.config/openbox/lxde-rc.xml hinzufügen und openbox --reconfigure
~/.config/openbox/lxde-rc.xml
<keybind key="W-h"> <action name="Execute"> <startupnotify> <enabled>true</enabled> <name>scrcpy</name> </startupnotify> <command>/usr/local/bin/scrcpy --stay-awake --disable-screensaver</command> </action> </keybind>
openbox –reconfigure
Installation von 7z
sudo apt install p7zip-full
Beispiele Erstellen/Hinzufügen:
7z a mein_archiv.7z *.txt fügt alle .txt-Dateien hinzu.
Extrahieren
7z x Archivname.7z (extrahiert mit Pfaden) oder 7z e <Archivname>.7z (ohne Pfade).
Auflisten
7z l Archivname.7z zeigt den Inhalt des Archivs.
Testen
7z t Archivname.7z prüft die Integrität des Archivs.
Installation
sudo apt install x11-xserver-utils
Beispiel
xrandr --output DP-2 --mode 1280x1024 --output LVDS-1 --mode 1280x1024 --same-as DP-2
Vorinstalliert
awk ist eine Skriptsprache zum Editieren und Analysieren von Texten
Bestimmte Zeilen einer Datei extrahieren
awk 'NR==3||NR==5||NR==13' zeilen.txt
awk '{printf "%s %s,%d\n",$1,$2,length($1)+length($2)}' vor_und_zunamen.txt
sudo nmap -sS 10.0.0.* -p80 --open | awk '/report|MAC/'
#!/bin/bash for i in * do NEWNAME=`echo "$i" | awk '{print tolower($0)}'` mv "$i" "$NEWNAME" done
ls -la | awk -F" " '{ print $9 }'
awk '{tmp=$1; $1=$2;$2=tmp; print}' vor_und_zunamen.txt
Installation
sudo apt install bc
Grundrechnungsarten
bc <<< "scale=2; 2.54*4/3+4-3"
oder
echo "scale=2; 2.54*4/3+4-3" | bc
Potenzieren
bc <<< "scale=2; 2^4"
n-te Wurzel ziehen n√x = x^(1/n) = e(ln x)/n
bc -l <<< "scale=2;e(l(8)/3)"
Mit bc -l wird eine mathematische Bibliothek hinzugefügt
s(x), sine of x, x is in radians
c(x), cosine of x, x is in radians
a(x), arctangent of x, arctangent returns radians
l(x), natural logarithm of x
e(x), exponential function of raising e to the value x
Berechnung der Zahl π auf 100 Stellen
bc -l <<< "scale=100; a(1)*4"
Vorbereitung Ggf. zu /etc/apt/sources.list hinzufügen:
deb http://deb.debian.org/debian testing main contrib non-free
sudo apt update
Installation
sudo apt install btop
Installation
sudo apt install ncal
Beispiele
cal 2026
ncal 2026
cal 2026 > 2026.txt
cal 3 2026
Im Jahr 1752 übernahmen Großbritannien und seine amerikanischen Kolonien den gregorianischen Kalender.
Es wurden elf Tage übersprungen, sodass dem 2. September 1752 direkt der 14. September folgte.
cal 9 1752
cal -y 2026
Das ganze Jahr mit Tagnummer
cal -j 2026
Woche beginnt mit Montag
ncal -M 2026
Datei anlegen
cat > testdatei.txt Zeile 1 Zeile 2 <EOF> (Strg + d)
Dateinhalt am Bildschirm ausgeben
cat testdatei.txt
Dateien zusammenführen
cat Seite_1.txt Seite_2.txt > text_komplett.txt
ZIP Dateien zusammenführen
cat Datei.zip.01 Datei.zip.02 > Datei_komplett.zip
Datei schreiben mit cat
cat /dev/hdd > name.iso
cat name.iso > /dev/hdd
cat /dev/video0 > film.mpg
cat /dev/audio > mpg123.wav ?? RAW Datei?
cat /dev/zero > /dev/hda löscht Festplatte
cat /proc/partitions ← listet alle Partitionen auf
Installation
sudo apt install imagemagick
Beispiel
mkdir internet;for i in *.[jJ][pP][gG] ; do convert $i -verbose -resize 1280x internet/$i ; done
JPG zu PNG
convert input.jpg output.png.
Bild drehen
convert input.png -rotate 90 output.png
cp test.txt{,.bak}
sudo cp Downloads/ubuntu-12.04.3-desktop-amd64.iso /dev/sdb
sudo gparted The driver descriptor says the physical block size is 2048 bytes, but Linux says it is 512 bytes. This is usually caused by accidently using the wrong block size when copying an iso to the drive. This is an annoying problem, but it's rather easy to fix.
Lösung:
sudo dd if=/dev/zero of=/dev/<id_of_your_device> bs=2048; sync
Festplattenimage auf die Festplatte schreiben
dd if=datei.img of=/dev/sdd bs=1M status=progress oflag=sync,direct
Festplatte kopieren
dd if=/dev/sdc of=/dev/sdd bs=1M status=progress oflag=sync,direct
Festplatte mit Zufallszahlen überscheiben (löschen)
dd if=/dev/random of=/dev/sde bs=1M
USB Stick mehrfach klonen
for i in {f..o}; do dd if=/dev/sde of=/dev/sd$i bs=1M status=progress & done
Installation von display
sudo apt install imagemagick
display name.jpg
display -resize 1024x name.jpg
display -resize x768 name.jpg
display -resize 60% name.jpg
display -rotate -90 name.jpg
Installation von eog
sudo apt install eog
eog name.jpg
eog --slide-show /path/to/folder
Intervall in der Diashow auf 2 Sekunden einstellen
gsettings set org.gnome.eog.fullscreen seconds 2
Installation
sudo apt install f3
Laufwerk mounten
f3write /media/user/Laufwerks-UUID
f3read /media/user/Laufwerks-UUID
Installation
sudo apt install ffmpeg
mp4 → mp3
ffmpeg -i in.mp4 out.mp3
YouTube Video mp4 → mp3
ffmpeg -i video.mp4 -vn -ar 44100 -ac 2 -ab 192k -f mp3 audio.mp3
wav → mp3
ffmpeg -i audio.wav -acodec libmp3lame audio.mp3
Installation
sudo apt install util-linux
Festplatten löschen, partitionieren, formatieren
#! /bin/bash part="1" read -p 'sdX: ' device sudo shred -fvn 1 /dev/$device sync sudo fdisk /dev/$device<<EOF n p 1 t 7 w EOF sync umount /dev/$device$part #Formatieren Patition 1 sudo mkfs.ntfs /dev/$device$part sync #umount /dev/$device$part sudo mkfs.ntfs /dev/sde1
NTFS USB Stick erstellen
#! /bin/bash part="1" read -p 'sdX: ' device sudo shred -fvn 1 /dev/$device sync sudo fdisk /dev/$device<<EOF n p 1 t 7 w EOF sync #Formatieren Patition 1 sudo mkfs.ntfs /dev/$device$part sync #sudo smartctl -t short /dev/sde #sync sudo badblocks -v /dev/$device$part
sudo fdisk /dev/sde < fdisk.conf
d 1 d 2 d 3 d 4 n p 1 +2000M n p 2 t 1 7 a 1 w
d (delete partitions) n (to create new partiton) p (for primary partition) 1 (for partition number) default for first cylinder default for last cylinder t (change partition's system id) 1 (for partition number) 7 (for NTFS partition) w (to write changes) </text> ====== feh - Bildbetrachter ====== ** Installation von feh ** <code bash> sudo apt install feh
feh dateiname.jpg
feh -F dateiname.jpg <- Vollbild
feh -g 640x480 dateiname.jpg
feh -c * <- Collage
#!/bin/bash # Verzeichnis, in dem die Dateien gesucht werden VERZEICHNIS="/Pfad/zum/Verzeichnis" # Dauer zwischen den Übergängen (in Sekunden) DELAY=5 # Endlosschleife while true; do # Bilder anzeigen for bild in "$VERZEICHNIS"/*.{jpg,jpeg,png,gif}; do if [ -f "$bild" ]; then eog "$bild" & # 'eog' ist der Eye of GNOME Bildbetrachter sleep "$DELAY" killall eog # Schließe den Bildbetrachter fi done # Filme abspielen for film in "$VERZEICHNIS"/*.{mp4,mkv,avi,wmv}; do if [ -f "$film" ]; then mpv "$film" # 'mpv' ist ein Mediaplayer, der Filme abspielen kann fi done done ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #Deepseek #!/bin/bash # Endlosschleife für Bilder und Videos while true; do # Durchsuche das aktuelle Verzeichnis nach Bild- und Videodateien for file in *; do # Überspringe Verzeichnisse if [ -d "$file" ]; then continue fi # Prüfe Dateityp anhand der Erweiterung case "${file,,}" in *.jpg|*.jpeg|*.png|*.gif|*.bmp|*.tiff) echo "Zeige Bild: $file" # Verwende feh für Bilder (installieren mit: sudo apt install feh) feh --fullscreen --auto-zoom --hide-pointer "$file" & FEH_PID=$! sleep 5 kill $FEH_PID 2>/dev/null ;; *.mp4|*.avi|*.mkv|*.mov|*.wmv|*.flv|*.webm|*.m4v) echo "Spiele Video ab: $file" # Verwende mpv für Videos (installieren mit: sudo apt install mpv) mpv --fs --no-audio --loop-file=no "$file" ;; *) # Überspringe andere Dateitypen continue ;; esac done done
Installation
sudo apt install findutils
Nach Dateinamen suchen
sudo find /verzeichnis -type f -iname *name.jpg
Nach Verzeichnisnamen suchen
sudo find /verzeichnis -type d -iname *verzeichnisname
Weitere Beispiele …
sudo apt install util-linux
fsck.vfat -r /dev/sdXn fsck.vfat -n /dev/sdc1 - a simple non-interactive read-only check fsck.vfat -a /dev/sdc1 - checks the file system and fixes non-interactively. Least destructive approach is always used. fsck.vfat -r /dev/sdc1 - interactive repair. User is always prompted when there is more than a single approach to fixing a problem. fsck.vfat -l -v -a -t /dev/sdc1 - a very verbose way of checking and repairing the filesystem non-interactively. The -t parameter will mark unreadable clusters as bad, thus making them unavailable to newly created files and directories.
grep -rnw "/pfad/zum/ordner/" -e "dein_suchbegriff"
-r: Sucht rekursiv (auch in Unterordnern).
-n: Zeigt die Zeilennummer an, in der der Text gefunden wurde.
-w: Sucht nach dem ganzen Wort (vermeidet Treffer, die nur Teil eines Wortes sind).
-l: (Optional) Zeigt nur die Dateinamen an, nicht den Text selbst.
hostnamectl
Ö3
#! /bin/bash #Ö3 cvlc https://orf-live.ors-shoutcast.at/oe3-q2a.m3u
Radio T
#! /bin/bash #Radio T cvlc http://streaming.fueralle.org:8000/radiot.ogg
ANTENNE BAYERN Oldies but Goldies
#! /bin/bash #ANTENNE BAYERN Oldies but Goldies cvlc https://play.antenne.de/oldies-but-goldies.m3u
Radio aus
#! /bin/bash killall vlc
ip a
ip addr show
curl ifconfig.me
Installation
sudo apt install iperf3
Server starten
sudo iperf3 -s
Client starten
sudo iperf3 -c IP_DES_SERVERS
Installation
sudo apt install jhead
jhead -n%Y-%m-%d_%H-%M-%S *.[jJ][pP][gG]
jhead dateiname.jpg gibt die EXIF-Dateiinformationen von Digitalfotos aus
for i in *; do jhead -exonly -ft $i;done
EXIF-Dateiinformationen von Digitalfotos
jhead dateiname.jpg
for i in *; do jhead -exonly -ft $i;done
Zeit ändern
jhead -ta-9 dateiname.jpg <- Zeit 9 Stunden zurücksetzen (-ta<+|-><timediff>) jhead -ta+0:00:25 *.jpg <- 25 Sekunden vor jhead -ts2008:07:25-15:00:00 VancouverKamloops.jpg
Datum ändern
jhead -da<newdate>-<olddate> dateiname.jpg, jhead -da2005:03:01-2004:03:01 dateiname.jpg jhead -da2005:03:01-2004:03:01 *.jpg
Exif header löschen
jhead -de dateinmae.jpg
EXIF header erstellen
jhead -mkexif dateiname.jpg
Bilder sortieren und umbenennen
jhead -n%Y-%m-%d_%H:%M:%S *.[jJ][pP][gG] ; n=1;for i in *;do mv $i bild_$(printf "%03d" $n).jpg;n=`expr $n + 1`;done
Installation
sudo apt install libjpeg-progs
Horizontal spiegeln
jpegtran -flip horizontal path/to/image.jpg > path/to/output.jpg
Drehung 90°
jpegtran -rotate 90 path/to/image.jpg > path/to/output.jpg
Schwarz/weiß Transformation
jpegtran -grayscale path/to/image.jpg > path/to/output.jpg
Bild zuschneiden
jpegtran -crop 100x100+10+10 path/to/image.jpg > path/to/output.jpg
Voraussetzung
Am Android Handy KDE Connect App installieren
In der App die IP des Computers eintragen und das gefundene Gerät konfigurieren
Installation
sudo apt install kdeconnect
kdeconnect-cli --send-sms "Hier ist dein Linux-Server" --destination +491701234567 --device GERÄTE_ID
kdeconnect-cli –list-devices
- Pixel_6: 166ec0250e88ff2b (reachable)
Die kryptische Zeichenfolge (hier fett markiert) ist die Geräte-ID
kdeconnect-cli --send-sms "Hier ist dein Linux-Server" --destination +491701234567 --device GERÄTE_ID
#!/bin/bash # --- KONFIGURATION --- DEVICE_ID="166ec0250e88ff2b" LISTE="sms_empfaenger.txt" MSG_FILE="sms_nachricht.txt" # --- LOGIK --- # 1. Prüfen, ob Dateien existieren if [[ ! -f "$LISTE" ]]; then echo "Fehler: Empfängerliste '$LISTE' nicht gefunden!" exit 1 fi if [[ ! -f "$MSG_FILE" ]]; then echo "Fehler: Nachrichtendatei '$MSG_FILE' nicht gefunden!" exit 1 fi # 2. Nachricht in eine Variable laden MESSAGE=$(cat "$MSG_FILE") # 3. Prüfen, ob das Gerät verbunden ist if ! kdeconnect-cli -l | grep -q "$DEVICE_ID"; then echo "Fehler: Handy ($DEVICE_ID) ist nicht verbunden." exit 1 fi echo "Starte SMS-Versand..." # 4. Datei Zeile für Zeile auslesen while IFS= read -r NUMBER || [[ -n "$NUMBER" ]]; do # Überspringe leere Zeilen oder Kommentare [[ -z "$NUMBER" || "$NUMBER" =~ ^# ]] && continue echo "Sende an: $NUMBER" # SMS senden kdeconnect-cli --device "$DEVICE_ID" --send-sms "$MESSAGE" --destination "$NUMBER" # Pause, damit Android nicht blockiert sleep 2 done < "$LISTE" echo "Alle Nachrichten wurden versendet!"
+491701111111 +491712222222
Hallo zusammen, dies ist eine Testnachricht, die direkt aus einer Textdatei gelesen wurde. Beste Grüße vom Server!
Installation
sudo apt install keepassxc
Daten zur Datenbank hinzufügen
keepassxc-cli add -u "Benutzername für den neuen Eintrag" -p --url "https://deine-url.de" --notes "Beschreibung" datenbankname.kdbx "/NameDesEintrags"
Alle Einträge anzeigen
keepassxc-cli show -a username -a password -a url -a notes datenbankname.kdbx "NameDesEintrags"
Suchen nach Einträgen
keepassxc-cli open datenbankname.kdbx
Prompt> search Titel
show -a password Titel
Einträge editieren
keepassxc-cli edit datenbankname.kdbx "NameDesEintrags" --username "Benutzername" --url "NeueUrl" --notes "NeueNotitz"
App am Handy
Keepass2Android
Sämtliche Prozesse eines Benutzers killen
kill -9 `ps -u <username> -o "pid="`
Sämtliche Prozesse mit dem gleichen Namen killen
ps aux | grep thunderbird | awk '{print "kill -9 "$2}' | sh
LibreOffice Writer von der Konsole starten
libreoffice26.2 --writer /pfad/dateiname.odt
LibreOffice Calc von der Konsole starten
libreoffice26.2 --calc /pfad/dateiname.ods
LibreOffice Impress von der Konsole starten
libreoffice26.2 --impress /pfad/dateiname.odp
LibreOffice Draw von der Konsole starten
libreoffice26.2 --draw /pfad/dateiname.odg
LibreOffice Math von der Konsole starten
libreoffice26.2 --math /pfad/dateiname.odt
LibreOffice Datenbank von der Konsole starten
libreoffice26.2 --base /pfad/dateiname.odb
Angeschlossenen Drucker auslesen
lpr -p
PDF an Papiergröße anpassen : lpr -o fitplot name.pdf Papierformat : -o media=A4 oberer Rand : -o page-top=72 (72 Punkte = 1 Zoll = 25.4 mm, 1 Punkt = 0.3528 mm) linker Rand : -o page-left=72 rechter Rand : -o page-right=72 unterer Rand : -o page-bottom=72 Zeilenumbruch : wrap=true #n : n Kopien 2, 4 oder 8 Seiten auf eine Seite : number-up=n Querformat : landscape Skalieren : scaling=100 Nur spezielle Seiten drucken : o page-ranges=1-4,7,9-12 Bilder auf Seitengröße skalieren : -o fit-to-page -o fitplot
Command-Line Printing and Options lpr -P SamsungCLP350N zwickts_mi.tiff lpr -o landscape -o scaling=75 -o media=A4 filename.jpg lpr -#num-copies filename lpr -o page-ranges=1-4,7,9-12 filename lpr -o fit-to-page filename lpr -o outputorder=reverse filename lpr -o sides=two-sided-long-edge filename → duplex portrait lpr -o sides=two-sided-short-edge filename → duplex landscape
Beim Druck von Bildern:
lpr -o natural-scaling=percent filename lpr -PSamsungCLP350N -o natural-scaling=130 zwickts_mi.tiff
for i in * ; do lpr -PLaserJetCP1525n -o natural-scaling=120 $i ; done
lpr -P HP_LaserJet_CP1525n_color -o PageSize=A4 -o PageRegion=A4 -o Duplex=None -o ColorModel=RGB -o MediaType=Plain -o OutputMode=Normal -o InputSlot=Manual -o OptionDuplex=False
lpr -P HP_LaserJet_CP1525n_color -o PageSize=A4 -o PageRegion=A4 -o Duplex=DuplexNoTumble -o ColorModel=RGB -o MediaType=Plain -o OutputMode=Normal -o InputSlot=Manual -o OptionDuplex=False
lpr -P HP_LaserJet_CP1525n_color -o PageSize=A4 -o PageRegion=A4 -o Duplex=DuplexTumble -o ColorModel=RGB -o MediaType=Plain -o OutputMode=Normal -o InputSlot=Manual -o OptionDuplex=False
lpr -PHP_LaserJet_CP1525N -o page-ranges=26,28,30,32,34,36,38,40,42 datei.pdf
sudo apt install util-linux
lsblk
Installation
sudo apt install mc
mc
F10 Taste - Midnight Commander verlassen
Menü Terminalfenster: Bearbeiten > Einstellungen > Verschiedenes > Tastenkürzel F10 für das Menü deaktivieren [X]
Strg + u
Installation
sudo apt install mpv
Start
mpv dateiname.mp3
mpv dateiname.mp4
Youtube
Für die Wiedergabe von Youtube-Videos wird einfach die URL des Videos an mpv übergeben
Voraussetzung
sudo apt install yt-dlp
mpv https://www.youtube.com/watch?v=VIDEOCODE
Installation
sudo apt install pdftk-java pdftk
PDF zerlegen
pdftk datei.pdf burst output page%02d.pdf
Zwei PDF zur einem PDF zusammenfügen
pdftk datei1.pdf datei2.pdf cat output datei.pdf
PDF rotieren
pdftk datei.pdf cat 1east output datei_rot.pdf
endeast rotates the pages 90 degrees clockwise (east) endsouth rotates the pages 180 degrees (south) endnorth rotates the pages 180 degrees (north)
rotate page 1 by 90 degrees clockwise
pdftk in.pdf cat 1east output out.pdf
rotate page 1 by 90 degrees clockwise
pdftk in.pdf cat 1east output out.pdf
For rotating clockwise
pdftk input.pdf cat 1-endeast output output.pdf
For rotating anti-clockwise
pdftk input.pdf cat 1-endwest output output.pdf
Dokument um 180° drehen
pdftk chiquitita_2.pdf cat 1south output chiquitita_2_180.pdf
The page rotation setting can cause pdftk to rotate pages and documents Each option sets the page rotation as follows (in degrees):
north: 0 east: 90 south: 180
west: 270
left: -90
right: +90
down: +180. left, right, and down make relative adjustments to a page's rotation.
Installation
sudo apt install pipewire-audio-client-libraries pipewire-utils
Vom Standard-Mikrofon/Eingang in eine WAV-Datei aufnehmen
pw-record meine_aufnahme.wav
Von der Soundkarte aufnehmen
wpctl status => ID der Output Soundkarte (Sink)
pw-record --target ID aufnahme_systemsound.wav
Sound von einer Webseite aufnehmen
pw-record --target Firefox aufnahme.wav
Installation
sudo apt install qrencode
QR-Code für Text
qrencode -o meinqrcode.png "Hallo Welt!"
QR-Code für URL
qrencode -o signal.png -s 2 'https://peer.st'
EPC-QR-Code für Banküberweisung
BCD 001 1 SCT RZSTAT2G187 Alpenverein, Sektion Anger AT503818700005004197 EUR5.00 Spende fuer Sektion Anger
QR-Code für WLAN
qrencode -t png -o wifi.png 'WIFI:S:SSID;T:WPA2;P:password;;'
QR-Code als SVG speichern
qrencode -t svg -o meinqrcode.svg "Hallo Welt!"
QR-Code für eine Adresse
File: address.txt BEGIN:VCARD N:Marianne Mustermann URL:http://www.marianne-mustermann.de EMAIL:info@www.marianne-mustermann.de TEL:+43-1234-567890 END:VCARD To convert this into the code, use: cat address.txt | qrencode -o address.png
QR-Code für einen Termin
File: kalender.txt BEGIN:VEVENT SUMMARY:Chemnitzer Linuxtage LOCATION:TU Chemnitz DTSTART:20260328T090000 DTEND:20260329T180000 DESCRIPTION:Beschreibung des Termines END:VEVENT cat kalender.txt | qrencode -o kalender.png
#!/bin/bash BIOS=$(dmidecode -t system | grep -e Name -e Number | awk -F': ' '{print $2}' | tr -d '"' | sed 's/$/, /g' | tr -d "\n") CPU=$(cat /proc/cpuinfo | grep "model name" -m1 | awk -F": " '{print $2}' ) MEM=$(hwinfo --mem | grep "Memory Size" | awk -F': ' '{print $2}') HDD=$(for n in $(hwinfo --ide | grep "Device File:" | awk -F': ' '{print $2}'); do echo "$(hwinfo --ide | grep $n -B 7 | grep Model| awk -F'"' '{print $2}') $(fdisk -l | grep $n -m1 | awk -F" " '{print $3" "$4}')"; done) #HDD=$(hwinfo --ide | grep -e Model -e Capacity | awk -F': ' '{print $2}' | tr -d '"' | sed 's/$/\n, /g' | cut -d"(" -f1 | tr -d "\n" | sed 's/ , /, /g') NETCARD=$(hwinfo --netcard | grep -e "Device File" -e Model -e "HW Address" | awk -F': ' '{print $2}' | tr -d '"' | sed 's/$/\n, /g' | cut -d"(" -f1 | tr -d "\n" | sed 's/ , /, /g') GFXCARD=$(hwinfo --gfxcard | grep Model | awk -F'"' '{print $2}') qrencode -o qr.png "$BIOS$CPU, $MEM RAM,$HDD $NETCARD$GFXCARD"
Installation von rfkill
sudo apt install rfkill
Ein- und ausschalten
rfkill list
rfkill block NUMMER # ausschalten
rfkill unblock NUMMER # einschalten
rfkill unblock wifi <- WLAN wird aktiviert
rfkill block wifi <- WLAN wird deaktiviert
Installation von rsync
sudo apt install rsync
Dateien über ein Netzwerk sichern
sudo rsync -av --info=progress2 --delete /d/zim/ -e ssh peer@10.0.0.4:/home/peer/Notebooks/Zim
Dateien über ein Netzwerk wiederherstellen
sudo rsync -av --info=progress2 --delete -e ssh peer@10.0.0.4:/home/peer/Notebooks/Zim/ /d/zim
Installation von sane-utils
sudo apt install sane-utils
Scanner suchen
scanimage -L
scanimage -L |cut -d ":" -f 3,4 | cut -d "'" -f 1
Welche Funktionen stellt der Scanner bereit?
scanimage -A
Unterstützte Dateiformate
PNM, TIFF, PNG, JPEG, PDF
Scannen
scanimage -d epson2:libusb:001:004 --mode Color -x 210 -y 297 --resolution 100dpi --format=jpeg > $(date +%F)_dateiname.jpeg
Fotokopie
scanimage -d epson2:libusb:001:004 --mode Color -x 210 -y 297 --resolution 100dpi --format=jpeg | lpr -P SamsungCLP350N -o natural-scaling=90
A4 - Grau
scanimage -d epson2:libusb:001:004 --mode Gray -x 210 -y 297 --resolution 300dpi --format=jpeg > scan01.jpeg
A4 - Farbe
scanimage -d epson2:libusb:001:004 --mode Color -x 210 -y 297 --resolution 300dpi --format=jpeg > scan01.jpeg
Ausschnitt
scanimage -d epson2:libusb:001:004 --mode Gray -x 200 -y 140 --resolution 300dpi --format=jpeg > ziwui_ziwui.jpeg
scanimage -d epson2:libusb:001:004 --mode Color -l 0 -t 0 -x 100 -y 70 --resolution 300dpi --format=jpeg > /d/Images/Scanner/$(date +%F)_scan.jp
#!/bin/bash x="150" y="120" #echo -n "Zähler: " read -p 'Zähler: ' COUNTER #COUNTER=1 echo "Bitte warten ..." bus_device=`scanimage -L |cut -d ":" -f 3,4 | cut -d "'" -f 1` echo "$bus_device" while true; do echo "1 .. Farbe, 10x10 cm"; echo "2 .. Farbe, 15x15 cm"; echo "3 .. Farbe, 20x23 cm"; echo "4 .. Farbe, 21x25 cm"; echo "5 .. Farbe, A4"; echo "6 .. Schwarz-Weiß, 10x10 cm"; echo "7 .. Schwarz-Weiß, 15x15 cm"; echo "8 .. Schwarz-Weiß, 20x23 cm"; echo "9 .. Schwarz-Weiß, 21x25 cm"; echo "0 .. Schwarz-Weiß, A4"; echo "x .. Ende"; read -n1 -s case "$REPLY" in 1) echo "Bild $(printf "%03d" $COUNTER).jpg wird in Farbe in der Größe 10x10 cm gescannt" x=100 y=100 farbe=Color ;; 2) echo "Bild $(printf "%03d" $COUNTER).jpg wird in in Farbe der Größe 15x15 cm gescannt" x=150 y=150 farbe=Color ;; 3) echo "Bild $(printf "%03d" $COUNTER).jpg wird in Farbe in der Größe 20x22cm gescannt" x=200 y=230 farbe=Color ;; 4) echo "Bild $(printf "%03d" $COUNTER).jpg wird in Farbe in der Größe 21x25 cm gescannt" x=210 y=250 farbe=Color ;; 5) echo "Bild $(printf "%03d" $COUNTER).jpg wird in Farbe in der Größe A4 gescannt" x=210 y=297 farbe=Color ;; 6) echo "Bild $(printf "%03d" $COUNTER).jpg wird in Schwarz-Weiß in der Größe 10x10 cm gescannt" x=100 y=100 farbe=Gray ;; 7) echo "Bild $(printf "%03d" $COUNTER).jpg wird in Schwarz-Weiß in der Größe 15x15 cm gescannt" x=150 y=150 farbe=Gray ;; 8) echo "Bild $(printf "%03d" $COUNTER).jpg wird in Schwarz-Weiß in der Größe 20x20 cm gescannt" x=200 y=230 farbe=Gray ;; 9) echo "Bild $(printf "%03d" $COUNTER).jpg wird in Schwarz-Weiß in der Größe 21x25 gescannt" x=210 y=250 farbe=Gray ;; 0) echo "Bild $(printf "%03d" $COUNTER).jpg wird in Schwarz-Weiß in der Größe A4 gescannt" x=210 y=297 farbe=Gray ;; x) echo "Ende" exit ;; esac scanimage -d epson2:libusb:$bus_device --mode $farbe -x $x -y $y --resolution 300dpi --format=jpeg > /d/Images/Scanner/fotobuch_gerti/$(printf "%03d" $COUNTER).jpg COUNTER=$((COUNTER+1)) done
Installation am Computer
# Abhängigkeiten installieren sudo apt install ffmpeg libsdl2-2.0-0 adb wget gcc git pkg-config meson ninja-build libavcodec-dev libavdevice-dev libavformat-dev libavutil-dev libswresample-dev libusb-1.0-0-dev libsdl2-dev # Quellcode laden und bauen cd /opt git clone https://github.com/Genymobile/scrcpy cd scrcpy ./install_release.sh
Voraussetzung am Android Handy
USB Debugging aktivieren
Handy und Computer mit USB Kabel verbinden
Bildschirm entsperren
Start am Computer
scrcpy --stay-awake --disable-screensaver
Handy und Computer mit WIFI verbinden
Voraussetzung
#!/bin/bash SERIAL="R3CW10XC0HJ" #mein Handy - Ergebnis von 'adb devices' echo "--- Starte scrcpy via WLAN Vorbereitung ---" # 1. IP-Adresse gezielt über die USB-Verbindung auslesen # Wir sagen ADB mit "-s $SERIAL", dass wir genau dieses physische Gerät meinen echo "[1/4] Lese IP-Adresse vom USB-Gerät..." IP_ADDR=$(adb -s "$SERIAL" shell ip -f inet addr show wlan0 | grep -Po 'inet \K[\d.]+') if [ -z "$IP_ADDR" ]; then echo "Fehler: IP-Adresse konnte nicht ausgelesen werden. Ist das Kabel dran?" exit 1 fi echo "Handy-IP: $IP_ADDR" # 2. TCPIP Modus auf diesem speziellen Gerät aktivieren echo "[2/4] Aktiviere TCPIP Modus..." adb -s "$SERIAL" tcpip 5555 sleep 2 # 3. Verbindung aufbauen echo "[3/4] Verbinde mit $IP_ADDR..." adb connect "$IP_ADDR:5555" sleep 1 # 4. scrcpy gezielt starten if adb devices | grep -q "$IP_ADDR:5555"; then echo "[4/4] Verbindung erfolgreich!" echo "Du kannst das USB-Kabel jetzt abziehen." # Wir starten scrcpy explizit für die WLAN-IP scrcpy -s "$IP_ADDR:5555" else echo "Fehler: WLAN-Verbindung konnte nicht hergestellt werden." fi
Nützliche Tastenkombinationen
Bildschirmaufzeichnung starten
scrcpy --stay-awake --disable-screensaver --record file.mp4
setxkbmap de
setxkbmap us
Mit Shortcut Alt + Shift zwischen de und us umschalten
setxkbmap -layout de,us -option grp:alt_shift_toggle
Installation von shred
sudo apt install coreutils
Datei mehrfach mit zufälligen Bitmustern überschreiben und löschen
shred -fuz DATEI
Ein gesamtes Laufwerk wird nur einmal (-n 1) mit zufälligen Bitmustern überschreiben
sudo shred -fvn 1 /dev/sde
Ausschalten -h
sudo shutdown -h now
In 10 Minuten ausschalten
sudo shutdown -h +10
Um 20:30 Uhr ausschalten
sudo shutdown -h 20:30
Reboot -r
sudo shutdown -r now
Computer in 20 Minuten neu starten
sudo shutdown -r +20
Installation von simplescreenrecorder
sudo apt install simplescreenrecorder
sudo apt-get install libavcodec-extra
Start
simplescreenrecorder
Installation von smartctl
sudo apt install smartmontools
Start
sudo smartctl -a /dev/sda
Das Programm ist im Paket coreutils enthalten
Sortieren mit sort A workaround is to make the sort independent of current locale settings by using LC_ALL=C sort -g , hier werden nach dem Punkt als Dezimalzeichen die Nachkommastellen richtig sortiert instead of sort -g, hier werden nach dem Punkt als Dezimalzeichen die Nachkommastellen als Text sortiert Bei einem Beistrich als Dezimalzeichen funktioniert der sort -g Befehl Problem bei /d/strom/awattar/awattar.sh sort funktioniert nicht mit dem Punkt als Dezimaltrennzeichen, wohl aber mit dem Beistrich! $'\t' https://www.linux-community.de/ausgaben/linuxuser/2005/01/zu-befehl-sort/1/ sort -t ":" -k 4n,4 -k 3nr,3 /etc/passwd Sortiert Vor- und Zunamen in einer Datei nach Zuname sort -t " " -k2 /d/Alpenverein/2023/helferinnen2023.txt -t ist das Trennzeichen
Installation von speedtest-cli
sudo apt install speedtest-cli
Internetgeschwindigkeit testen
speedtest-cli
Internetgeschwindigkeit testen und die Ergebnisse in eine Datei schreiben
touch speed.txt
speedtest-cli --secure | awk -v date=$(date '+%d.%b.%Y,%H:%M') 'NR**7 || NR**9 {printf "%s\t",$2} END {printf "%s\n",date}' >> speed.txt ; cat speed.txt
Installation von ssh
sudo apt install openssh-server
ssh status
sudo systemctl status ssh
ssh starten
sudo systemctl start ssh
ssh stoppen
sudo systemctl stop ssh
ssh wird bei jedem Systemstart automatisch geladen
sudo systemctl enable ssh
ssh restart
sudo systemctl restart ssh
Installation von tar
sudo apt install tar
Archiv erstellen mit GZIP (schnell, verbreitet)
tar -czvf name.tar.gz /verzeichnis
Archiv erstellen mit BZIP2 (bessere Kompression)
tar -cjvf name.tar.bz2 /verzeichnis
Archiv erstellen mit XZ (beste Kompression, dauert länger)
tar -cJvf name.tar.xz /verzeichnis
Nur bestimmte Datei extrahieren
tar -xvf archiv.tar.gz pfad/zur/datei
Entpacken in ein bestimmtes Verzeichnis
tar -xjvf archiv.tar.bz2 -C /ziel/verzeichnis
Installation von vim
sudo apt install vim
Installation
sudo apt install w3m w3m-img
Start
w3m peer.st
Auto suchen
./suche.sh https://www.dasparking.de/gebrauchtwagen-information/mg-mg4/mg4-luxury-150kw-64-kwh-7j-garantie-jan26/JYWW7WEF.html
LibreOffice
w3m https://de.libreoffice.org/download/download/ | grep libreoffice-help | awk NR==1 | sed 's/\•//' | cut -c21-26
w3m https://de.libreoffice.org/download/download/ | grep libreoffice-help | awk NR==1 | sed 's/\•//' | cut -c21-28
cd /opt
sudo apt install git
sudo git clone https://github.com/sivel/speedtest-cli.git
sudo python /opt/speedtest-cli/speedtest.py
wget -O speedtest-cli https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py
#!/bin/bash sudo apt -y install arandr sudo apt -y install audacity sudo apt -y install bc sudo apt -y install btop sudo apt -y install chromium sudo apt -y install chromium-l10n sudo apt -y install console-data sudo apt -y install coreutils sudo apt -y install curlftpfs sudo apt -y install dcfldd #dd mit Fortschrittsanzeige sudo apt -y install dolphin sudo apt -y install eog sudo apt -y install ethtool wakeonlan rsync cifs-utils sudo apt -y install exfat-utils exfat-fuse sudo apt -y install f3 sudo apt -y install ffmpeg sudo apt -y install findutils sudo apt -y install firefox-esr firefox-esr-l10n-de sudo apt -y install flashplugin-nonfree sudo apt -y install geany sudo apt -y install gimp #sudo apt -y install gimp-ufraw #<- Gimp Plugin für Panasonic RW2 Dateien sudo apt -y install git sudo apt -y install gparted sudo apt -y install gthumb sudo apt -y install gwenview sudo apt -y install htop sudo apt -y install hwinfo sudo apt -y install icedove icedove-l10n-de sudo apt -y install imagemagick sudo apt -y install inkscape sudo apt -y install iperf3 sudo apt -y install jhead sudo apt -y install jmtpfs sudo apt -y install kdeconnect sudo apt -y install keepassxc sudo apt -y-get install libavcodec-extra #sudo apt -y install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') virtualbox sudo apt -y install lshw sudo apt -y install lxterminal sudo apt -y install mc sudo apt -y install mpv sudo apt -y install ncal sudo apt -y install nmap sudo apt -y install okular #sudo apt -y install openshot sudo apt -y install openssh-server sudo apt -y install p7zip sudo apt -y install pavucontrol sudo apt -y install pdftk-java pdftk sudo apt -y install pipewire-audio-client-libraries pipewire-utils sudo apt -y install qemu-kvm libvirt-clients libvirt-daemon-system sudo apt -y install qrencode sudo apt -y install rfkill sudo apt -y install scrcpy sudo apt -y install simplescreenrecorder sudo apt -y install smplayer sudo apt -y install speedtest-cli sudo apt -y install tar sudo apt -y install texlive texlive-latex-extra texlive-lang-german texlive-fonts-extra texmaker sudo apt -y install thunderbird sudo apt -y install thunderbird-l10n-de sudo apt -y install ttf-mscorefonts-installer #<- Voraussetzung: in /etc/apt -y/sources.list contrib hinzufügen #sudo apt -y install ufraw #<- Programm zum Bearbeiten von Panasonic RW2 Dateien - https://wiki.ubuntuusers.de/UFRaw/ #sudo apt -y install unetbootin sudo apt -y install util-linux sudo apt -y install vim sudo apt -y install vim-gtk #sudo apt -y install virtualbox sudo apt -y install vlc sudo apt -y install w3m w3m-img sudo apt -y install wget sudo apt -y install wkhtmltopdf sudo apt -y install wput sudo apt -y install x11-xserver-utils sudo apt -y install xournal sudo apt -y install xsane sane-utils sudo apt -y install zim