<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Shell-Skripte &#8211; Linux und Ich</title>
	<atom:link href="https://linuxundich.de/tag/shell-skripte/feed/" rel="self" type="application/rss+xml" />
	<link>https://linuxundich.de</link>
	<description>Blog über Ubuntu, Linux, Android und IT</description>
	<lastBuildDate>Tue, 25 Mar 2025 16:36:25 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://linuxundich.de/wp-content/uploads/2025/04/cropped-lui-app-512-32x32.png</url>
	<title>Shell-Skripte &#8211; Linux und Ich</title>
	<link>https://linuxundich.de</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Eigene Skripte für Nautilus: Bilder zu WebP konvertieren</title>
		<link>https://linuxundich.de/gnu-linux/eigene-skripte-fuer-nautilus-bilder-zu-webp-konvertieren/</link>
					<comments>https://linuxundich.de/gnu-linux/eigene-skripte-fuer-nautilus-bilder-zu-webp-konvertieren/#comments</comments>
		
		<dc:creator><![CDATA[Christoph Langner]]></dc:creator>
		<pubDate>Sun, 16 Mar 2025 09:02:56 +0000</pubDate>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Gnome]]></category>
		<category><![CDATA[Howto]]></category>
		<category><![CDATA[Nautilus]]></category>
		<category><![CDATA[Shell-Skripte]]></category>
		<guid isPermaLink="false">https://linuxundich.de/?p=44190</guid>

					<description><![CDATA[So gestaltest du deinen GNOME-Desktop mit Nautilus-Skripten effizienter. Mit diesem Beispiel kannst du Bilder direkt im Dateimanager ins WebP-Format konvertieren, ohne eine separate Bildbearbeitungssoftware öffnen zu müssen.]]></description>
										<content:encoded><![CDATA[
<p>Ich nutze den GNOME-Desktop täglich und schätze seine minimalistische Gestaltung. Dennoch fehlen manchmal Funktionen, die meinen Workflow effizienter gestalten könnten, wie die Möglichkeit, bestimmte Aufgaben direkt aus dem Dateimanager mit nur einem Klick auszuführen. Mit Nautilus-Skripten lässt sich dies jedoch ganz einfach umsetzen.</p>



<p>In diesem Beitrag zeige ich euch, wie ihr ein solches Skript erstellt. Als Beispiel möchte ich demonstrieren, wie man Bilder in das WebP-Format umwandelt, ohne eine Bildbearbeitungssoftware öffnen zu müssen. Dazu verwende ich <code>cwebp</code>, ein leistungsstarkes Tool zur Konvertierung von Bildern in das WebP-Format, sowie Zenity um eine grafische Benutzeroberfläche für die Eingabe von Bildgrößen bereitzustellen.</p>



<figure class="wp-block-video"><video height="905" style="aspect-ratio: 1456 / 905;" width="1456" controls src="https://linuxundich.de/wp-content/uploads/2025/03/ConvertToWebP.webm"></video></figure>



<h3 class="wp-block-heading" id="warum-webp">Warum WebP?</h3>



<p>WebP ist ein modernes Bildformat, das eine bessere Komprimierung als JPG oder PNG ermöglicht, ohne die Bildqualität merklich zu beeinträchtigen. Es ist besonders für Webentwickler und Blogger von Vorteil, da es die Ladezeiten von Webseiten reduziert und somit die Performance verbessert.</p>



<h3 class="wp-block-heading" id="vorbereitung-benötigte-pakete-installieren">Vorbereitung: Benötigte Pakete installieren</h3>



<p>Bevor ihr mit dem Skript beginnt, stellt sicher, dass die erforderlichen Programme installiert sind. Falls nicht, könnt ihr diese unter Debian-basierten Distributionen wie Ubuntu oder TUXEDO OS mit dem folgenden Befehl installieren:</p>



<pre class="wp-block-code"><code>### Unter Arch Linux, Manjaro und Co.
$ <strong>sudo pacman -S libwebp zenity</strong>
### Unter Ubuntu, Debian und Co.
$ <strong>sudo apt install webp zenity</strong></code></pre>



<h3 class="wp-block-heading" id="erstellung-des-skripts-zur-webp-konvertierung">Erstellung des Skripts zur WebP-Konvertierung</h3>



<p>Legt ein neues Skript im Nautilus-Skripte-Ordner an:</p>



<pre class="wp-block-code"><code>$ <strong>mkdir -p ~/.local/share/nautilus/scripts</strong>
$ <strong>gedit ~/.local/share/nautilus/scripts/ConvertToWebP</strong></code></pre>



<p>Fügt nun den folgenden Code in die Datei ein und speichert sie:</p>



<pre class="wp-block-code"><code>#!/bin/bash

# Überprüfen, ob cwebp und zenity installiert sind
if ! command -v cwebp &amp;> /dev/null; then
    zenity --error --text="cwebp ist nicht installiert."
    exit 1
fi

# Benutzer nach Breite und Höhe fragen
input=$(zenity --forms --title="Bildkonvertierung nach WebP" \
    --text="Gebt die gewünschte Breite und Höhe ein (0 für Originalgröße):" \
    --add-entry="Breite" \
    --add-entry="Höhe")

# Falls der Benutzer abbricht, das Skript beenden
if &#91; -z "$input" ]; then
    exit 1
fi

width=$(echo "$input" | cut -d '|' -f1)
height=$(echo "$input" | cut -d '|' -f2)

# Falls keine Werte eingegeben wurden, Standardwerte setzen
width=${width:-0}
height=${height:-0}

# Alle ausgewählten Dateien verarbeiten
for file in "$@"; do
    if &#91; -f "$file" ]; then
        output="${file%.*}.webp"
        
        if &#91;&#91; "$width" -eq 0 &amp;&amp; "$height" -eq 0 ]]; then
            # Keine Skalierung, direkt konvertieren
            cwebp "$file" -o "${file%.*}.webp" >/dev/null 2>&amp;1
        else
            cwebp -resize "$width" "$height" "$file" -o "${file%.*}.webp" >/dev/null 2>&amp;1
        fi
    fi
done</code></pre>



<h3 class="wp-block-heading" id="rechte-setzen">Rechte setzen</h3>



<p>Damit das Skript ausgeführt werden kann, muss es als ausführbar markiert werden. Das geht mit:</p>



<pre class="wp-block-code"><code>$ <strong>chmod +x ~/.local/share/nautilus/scripts/ConvertToWebP</strong></code></pre>



<h3 class="wp-block-heading" id="skript-in-nautilus-einbinden">Skript in Nautilus einbinden</h3>



<p>Nachdem das Skript erstellt wurde, ist es direkt über den Dateimanager Nautilus verfügbar. Wählt eine oder mehrere Bilder aus, klickt mit der rechten Maustaste darauf, navigiert zu <em>Skripte</em> und wählt <em>ConvertToWebP</em> aus.</p>



<figure class="wp-block-image size-full"><img fetchpriority="high" decoding="async" width="1149" height="759" src="https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP1.webp" alt="Das Skript erscheint direkt nach dem Abspeichern im Skripte-Menü des Nautilus-Dateimanagers." class="wp-image-44192" srcset="https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP1.webp 1149w, https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP1-640x423.webp 640w, https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP1-636x420.webp 636w, https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP1-681x450.webp 681w" sizes="(max-width: 1149px) 100vw, 1149px"><figcaption class="wp-element-caption">Das Skript erscheint direkt nach dem Abspeichern im Skripte-Menü des Nautilus-Dateimanagers.</figcaption></figure>



<figure class="wp-block-image size-full"><img decoding="async" width="1149" height="759" src="https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP2.webp" alt="Über Zenity wird die zu skalierenden Bildgröße abgefragt. Soll die Größe beibehalten werden, lasst ihr die Felder leer oder tragt 0 ein." class="wp-image-44193" srcset="https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP2.webp 1149w, https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP2-640x423.webp 640w, https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP2-636x420.webp 636w, https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP2-681x450.webp 681w" sizes="(max-width: 1149px) 100vw, 1149px"><figcaption class="wp-element-caption">Über Zenity wird die zu skalierenden Bildgröße abgefragt. Soll die Größe beibehalten werden, lasst ihr die Felder leer oder tragt 0 ein.</figcaption></figure>



<figure class="wp-block-image size-full"><img decoding="async" width="1160" height="762" src="https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP3.webp" alt="In das WebP-Format konvertiert sind die Bilder, bei gleicher Größe nur noch 1/10 bis 1/20 so groß." class="wp-image-44194" srcset="https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP3.webp 1160w, https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP3-640x420.webp 640w, https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP3-639x420.webp 639w, https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP3-681x447.webp 681w, https://linuxundich.de/wp-content/uploads/2025/03/nautilus-skripte-ConvertToWebP3-741x486.webp 741w" sizes="(max-width: 1160px) 100vw, 1160px"><figcaption class="wp-element-caption">In das WebP-Format konvertiert sind die Bilder, bei gleicher Größe nur noch 1/10 bis 1/20 so groß.</figcaption></figure>



<p>Das Skript konvertiert nun alle markierten Bilddateien in gängigen Formaten in das WebP-Format und reduziert deren Größe, während es das Seitenverhältnis beibehält. Falls <code>cwebp</code> nicht installiert ist, wird eine Fehlermeldung ausgegeben. Alternativ könnt ihr die gewünschten Zielgrößen für Breite und Höhe in Pixeln angeben.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://linuxundich.de/gnu-linux/eigene-skripte-fuer-nautilus-bilder-zu-webp-konvertieren/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		<enclosure url="https://linuxundich.de/wp-content/uploads/2025/03/ConvertToWebP.webm" length="0" type="video/webm" />

			</item>
		<item>
		<title>ShellCheck hilft beim Schreiben handwerklich sauberer Shell-Skripte</title>
		<link>https://linuxundich.de/gnu-linux/shellcheck-hilft-beim-schreiben-handwerklich-sauberer-shell-skripte/</link>
					<comments>https://linuxundich.de/gnu-linux/shellcheck-hilft-beim-schreiben-handwerklich-sauberer-shell-skripte/#comments</comments>
		
		<dc:creator><![CDATA[Christoph Langner]]></dc:creator>
		<pubDate>Wed, 08 Jun 2016 13:05:21 +0000</pubDate>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Shell-Skripte]]></category>
		<category><![CDATA[Terminal]]></category>
		<category><![CDATA[Tipps]]></category>
		<guid isPermaLink="false">https://linuxundich.de/?p=39671</guid>

					<description><![CDATA[Früher oder später wird man als Linux-User sein erstes kleines Shell-Skript schreiben. Nicht, weil man unter Linux nicht ohne Kommandos, die Shell oder gar eigens &#8222;programmierte&#8220; Skripte auskommen würde, sondern weil man dies freiwillig tut, da sich mithilfe von einfachen Bash-Skripten die eine oder andere Aufgabe deutlich beschleunigen lässt. Als Einsteiger bastelt man so lange [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Früher oder später wird man als Linux-User sein erstes kleines Shell-Skript schreiben. Nicht, weil man unter Linux nicht ohne Kommandos, die Shell oder gar eigens &#8222;programmierte&#8220; Skripte auskommen würde, sondern weil man dies freiwillig tut, da sich mithilfe von einfachen Bash-Skripten die eine oder andere Aufgabe deutlich beschleunigen lässt. Als Einsteiger bastelt man so lange vor sich hin, bis das Skript funktioniert und seine Aufgabe erledigt. Doch in der Regel macht man dabei eine Reihe von Fehlern, die nicht unmittelbar auffallen, ShellCheck hilft diese aufzudecken und euren &#8222;Programmierstil&#8220; zu verbessern.</p>
<p><span id="more-39671"></span></p>
<p>ShellCheck gibt es unter <a href="https://www.shellcheck.net" target="_blank" rel="noopener">shellcheck.net</a> im Netz und auch in der Paketverwaltung, der meisten Linux-Distributionen. Unter Debian/Ubuntu, wie auch unter Arch Linux lässt sich das Programm direkt mit einem Kommando einspielen. Anschließend könnt ihr das kleine Programm direkt auf euer Skript loslassen. Solltet ihr auf einem System arbeiten, auf dem sich keine weiteren Programme installieren lassen oder wo euch dazu die nötigen Rechte fehlen, könnt ihr auf die webbasierte Variante zurückgreifen. Am Ende zeigen diese immer dasselbe Ergebnis an.</p>
<pre>### ShellCheck unter Debian/Ubuntu installieren...
$ sudo apt install shellcheck

### ShellCheck unter Arch Linux installieren...
$ sudo pacman -S shellcheck

### Die Hilfe zu ShellCheck...
$ shellcheck --help
unrecognized option `--help'

Usage: shellcheck [OPTIONS...] FILES...
  -e CODE1,CODE2..  --exclude=CODE1,CODE2..  exclude types of warnings
  -f FORMAT         --format=FORMAT          output format
  -C[WHEN]          --color[=WHEN]           Use color (auto, always, never)
  -s SHELLNAME      --shell=SHELLNAME        Specify dialect (sh,bash,dash,ksh)
  -x                --external-sources       Allow 'source' outside of FILES.
  -V                --version                Print version information
</pre>
<p>Im Terminal zeigt ShellCheck die Hinweise auf schlechten Skript-Still in seiner Ausgabe farbiert markiert an. Die Beschreibung hinter dem Report-Codes (SC2046, SC2086 etc.) gibt euch einen ersten Eindruck, von dem was ihr falsch macht. Für weiterführende Details gebt ihr den Code in die Suchfunktion des <a href="https://github.com/koalaman/shellcheck/wiki" target="_blank" rel="noopener">ShellCheck-Wiki</a> ein. Dort erklärt ShellCheck genauer, was ihr warum falsch macht, zudem gibt es dort Beispiele, wie man die angemahnte Stelle besser gestalten sollte.</p>
<p><figure id="attachment_39672" aria-describedby="caption-attachment-39672" style="width: 640px" class="wp-caption aligncenter"><a href="https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-terminal.png"><img loading="lazy" decoding="async" class="size-medium wp-image-39672" src="https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-terminal-640x462.png" alt="Das Programm lässt sich in den meisten Distributionen aus der Paketverwaltung installieren." width="640" height="462" srcset="https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-terminal-640x462.png 640w, https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-terminal-582x420.png 582w, https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-terminal-681x492.png 681w, https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-terminal.png 899w" sizes="auto, (max-width: 640px) 100vw, 640px"></a><figcaption id="caption-attachment-39672" class="wp-caption-text">Das Programm lässt sich in den meisten Distributionen aus der Paketverwaltung installieren.</figcaption></figure></p>
<p>Alternativ kopiert ihr euren Code in die webbasierte Version von ShellCheck. Dies macht zwar ein wenig Arbeit, dafür könnt ihr die Report-Codes direkt anklicken, wohin euch der Browser direkt auf die Wiki-Seite führt. Diese Variante ist also besonders dann sinnvoll, wenn ihr ein längeres Skript mit vielen Fehlern überprüfen wollt. So erspart man sich das hin- und herkopieren der Fehlercodes zwischen Terminal und Browser.</p>
<p><figure id="attachment_39673" aria-describedby="caption-attachment-39673" style="width: 640px" class="wp-caption aligncenter"><a href="https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-browser.png"><img loading="lazy" decoding="async" class="size-medium wp-image-39673" src="https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-browser-640x553.png" alt="ShellCheck hilft beim Schreiben sauberer Shell-Skripte ohne problematische Ausdrücke." width="640" height="553" srcset="https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-browser-640x553.png 640w, https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-browser-486x420.png 486w, https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-browser-681x588.png 681w, https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-browser.png 942w" sizes="auto, (max-width: 640px) 100vw, 640px"></a><figcaption id="caption-attachment-39673" class="wp-caption-text">ShellCheck hilft beim Schreiben sauberer Shell-Skripte ohne problematische Ausdrücke.</figcaption></figure></p>
<p><figure id="attachment_39691" aria-describedby="caption-attachment-39691" style="width: 640px" class="wp-caption aligncenter"><a href="https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-hinweise.png"><img loading="lazy" decoding="async" class="size-medium wp-image-39691" src="https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-hinweise-640x551.png" alt="In der Webversion von ShellCheck lassen sich Hinweise zu den problematischen Stellen aufrufen." width="640" height="551" srcset="https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-hinweise-640x551.png 640w, https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-hinweise-488x420.png 488w, https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-hinweise-681x586.png 681w, https://linuxundich.de/wp-content/uploads/2016/06/shellcheck-hinweise.png 945w" sizes="auto, (max-width: 640px) 100vw, 640px"></a><figcaption id="caption-attachment-39691" class="wp-caption-text">In der Webversion von ShellCheck lassen sich Hinweise zu den problematischen Stellen aufrufen.</figcaption></figure></p>
]]></content:encoded>
					
					<wfw:commentRss>https://linuxundich.de/gnu-linux/shellcheck-hilft-beim-schreiben-handwerklich-sauberer-shell-skripte/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
			</item>
		<item>
		<title>Vorsicht bei gut gemeinten Tipps und Ratschlägen für die Shell</title>
		<link>https://linuxundich.de/gnu-linux/vorsicht-bei-gut-gemeinten-tipps-und-ratschlagen-fur-die-shell/</link>
					<comments>https://linuxundich.de/gnu-linux/vorsicht-bei-gut-gemeinten-tipps-und-ratschlagen-fur-die-shell/#comments</comments>
		
		<dc:creator><![CDATA[Christoph Langner]]></dc:creator>
		<pubDate>Sun, 21 Aug 2011 15:42:11 +0000</pubDate>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[commandlinefu.com]]></category>
		<category><![CDATA[Shell-Skripte]]></category>
		<category><![CDATA[Sicherheit]]></category>
		<guid isPermaLink="false">http://linuxundich.de/de/?p=15127</guid>

					<description><![CDATA[Gerade bin ich bei commandlinefu.com über folgenden kleinen kurzen Code-Schnipsel gestolpert. Ich möchte dem Autor nicht unterstellen, dass er da mit Absicht sämtliche Dateien im aktuellen Verzeichnis löschen möchte (sonst stünde dort vielleicht gleich ein rm -rf !(logo.png);). Doch so ein Fall zeigt mal wieder, dass man beim Übernehmen von gut gemeinten Ratschlägen immer Vorsicht [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Gerade bin ich bei <a href="http://www.commandlinefu.com/" target="_blank" rel="noopener">commandlinefu.com</a> über folgenden kleinen kurzen Code-Schnipsel gestolpert. Ich möchte dem Autor nicht unterstellen, dass er da mit Absicht sämtliche Dateien im aktuellen Verzeichnis löschen möchte (sonst stünde dort vielleicht gleich ein <code>rm -rf !(logo.png);</code>). Doch so ein Fall zeigt mal wieder, dass man beim Übernehmen von gut gemeinten Ratschlägen immer Vorsicht walten lassen sollte. Gerade wenn der entsprechende Beitrag nicht durch ein Peer-Review gegangen ist sollte man immer ein bisschen Skepsis beibehalten&#8230;</p>
<p><figure id="attachment_15128" aria-describedby="caption-attachment-15128" style="width: 640px" class="wp-caption aligncenter"><a href="http://linuxundich.de/wp-content/uploads/2011/08/commandlinefu.png"><img loading="lazy" decoding="async" class="td-modal-image wp-image-15128 size-medium" title="commandlinefu.com" src="https://linuxundich.de/wp-content/uploads/2011/08/commandlinefu-640x379.png" alt="" width="640" height="379" srcset="https://linuxundich.de/wp-content/uploads/2011/08/commandlinefu-640x379.png 640w, https://linuxundich.de/wp-content/uploads/2011/08/commandlinefu-709x420.png 709w, https://linuxundich.de/wp-content/uploads/2011/08/commandlinefu-681x403.png 681w, https://linuxundich.de/wp-content/uploads/2011/08/commandlinefu-250x148.png 250w, https://linuxundich.de/wp-content/uploads/2011/08/commandlinefu-550x326.png 550w, https://linuxundich.de/wp-content/uploads/2011/08/commandlinefu-800x474.png 800w, https://linuxundich.de/wp-content/uploads/2011/08/commandlinefu-304x180.png 304w, https://linuxundich.de/wp-content/uploads/2011/08/commandlinefu-506x300.png 506w, https://linuxundich.de/wp-content/uploads/2011/08/commandlinefu-844x500.png 844w, https://linuxundich.de/wp-content/uploads/2011/08/commandlinefu.png 925w" sizes="auto, (max-width: 640px) 100vw, 640px"></a><figcaption id="caption-attachment-15128" class="wp-caption-text">commandlinefu.com</figcaption></figure></p>
]]></content:encoded>
					
					<wfw:commentRss>https://linuxundich.de/gnu-linux/vorsicht-bei-gut-gemeinten-tipps-und-ratschlagen-fur-die-shell/feed/</wfw:commentRss>
			<slash:comments>16</slash:comments>
		
		
			</item>
	</channel>
</rss>
