Thunar/Benutzerdefinierte Aktionen

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

  1. Einen Editor öffnen

  2. Ein Terminal öffnen

  3. Rechte für Dateien und Ordner ändern

Inhaltsverzeichnis
  1. Thunar-Dialog
  2. Beispiele
  3. Editor
  4. Links

./thunar.png Benutzerdefinierte Aktionen erweitern die Funktionalität des Dateimanagers Thunar und werden im Kontextmenü rechte Maustaste aufgeführt. Das erlaubt schnellen Zugriff auf diverse Kommandos und Programme aus dem Dateimanager heraus. In Kombination mit Skripten hat man mit dieser Funktion quasi unbegrenzte Möglichkeiten.

Es gibt zwei Wege, um Aktionen zu erstellen:

  1. mit Thunar und dem Dialog "Bearbeiten -> Benutzerdefinierte Aktionen..."

  2. mit einem Editor

Thunar-Dialog

./custom_action_2.png Als Beispiel soll eine Textdatei ausgedruckt werden. Das folgende Beispiel gilt nur für Ubuntu 12.04, da das Paket xfprint4 bei neueren Ubuntu-Versionen nicht mehr in den offiziellen Paketquellen enthalten ist. Alternativen sind im Artikel Xfce Power User Tips, Tricks & Tweaks: Working With Documents 🇬🇧 aufgeführt.

  1. "Bearbeiten -> Benutzerdefinierte Aktionen..." aufrufen,

  2. ./list-add.png anwählen,

  3. Reiter Allgemein

    • Name: Drucke Datei

    • Beschreibung: Drucke Datei mit xfprint

    • Befehl: xfprint4 %f

  4. Reiter Dateizuordnung

    • Dateimuster: *

    • [] Textdateien anwählen

  5. OK

Die neue Aktion zum Drucken von Textdateien erscheint in den benutzerdefinierten Aktionen.

Einstellungen
ElementInhalt
./list-add.pngneue Aktion hinzufügen
./Edit.pngausgewählte Aktion bearbeiten
./Entfernen.pngangewählte Aktion entfernen
./go-up.png./go-down.pngAktionsmenü sortieren.

Beispiele

Hier ein paar weitere Beispiele, um die Liste mit den Aktionen zu erweitern.

"Senden an"-Funktion

Einige der hier aufgeführten Aktionen lassen sich mit der "Senden an"-Funktion noch bequemer und übersichtlicher nutzen.

Archive entpacken mit unp

Das Perl-Skript unp muss zuerst installiert werden.

Spiele Musik

Weitere Informationen im Artikel Audacious.

Enqueue Musik

Brennen

Weitere Informationen im Artikel K3b.

Bilder anzeigen

Weitere Informationen im Artikel Geeqie.

Konvertiere von PNG nach JPEG

Weitere Informationen im Artikel ImageMagick.

JPGs drehen

Bilder drehen

Exif-Daten entfernen

Weitere Informationen im Artikel JHead.

Prüfsumme mit md5sum berechnen

Grafische Ausgabe der Prüfsumme mit md5sum:

Alternativ kann man auch eine Datei QUELLE.md5 erstellen lassen:

Öffne in Terminal

Weitere Informationen zum Terminal.

Öffne Shellskript in Terminal

Alternatives Terminal

Root-Terminal

Ordner als Root öffnen

Für dieses Script wird folgendes Paket benötigt:

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren:

sudo apt-get install gksu 

sudo aptitude install gksu 

PDF verkleinern

Für dieses Script werden folgende Pakete benötigt:

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren:

sudo apt-get install zenity ghostscript  

sudo aptitude install zenity ghostscript  

Das Skript überprüft zunächst, ob bereits eine Datei gleichen Namens existiert und bietet ggf. an, diese zu überschreiben. Am Ende der Verkleinerung wird eine Meldung ausgegeben. Je nach Datei kann die Größe danach nur noch 20% betragen.

Im Dateinamen darf keine Klammer () vorkommen, da sonst ein Syntaxfehler wie "bash: Syntaxfehler beim unerwarteten Wort »(«". Diese Meldung sieht man in Thunar nicht (der Befehl wird dann nicht erfolgreich ausgeführt), sondern nur im Terminal, wenn der Befehl per Hand eingegeben wird.

Dateien senden über GNOME-Bluetooth

Weitere Informationen im Artikel Bluetooth/GNOME-Bluetooth.

Dateisuche

Bei Bedarf können weitere Optionen angegeben werden. Weitere Informationen im Artikel Catfish (Abschnitt „Startmodi“).

Alternativ kann auch das Programm gnome-search-tool verwendet werden:

Belegter Speicherplatz

Weitere Informationen im Artikel ln.

Netzwerkfreigaben erstellen

Achtung!

Aus Sicherheitsgründen sollte niemals das eigene Homeverzeichnis freigegeben werden, sondern nur ein einzelner Ordner innerhalb des Homeverzeichnis. Dazu bietet sich beispielsweise der bereits vorhandene Ordner ~/Öffentlich/ an.

Grundlage ist die Kenntnis des Artikels net usershare. Dabei handelt es sich um die "persönliche Freigabe" eines Ordners im eigenen Homeverzeichnis, die nicht mit einer systemweiten Freigabe verwechselt werden sollte (siehe Samba Server GNOME), auch wenn sie praktisch die gleiche Funktionalität bietet.

Außerdem muss man dafür sorgen, das der Zugriff auf das eigene Homeverzeichnis überhaupt möglich ist:

chmod 755 $HOME 

Quelle: Any GUI app to configure samba/file sharing on XFCE? 🇬🇧

Netzwerkfreigaben entfernen

Um eine solche Freigabe wieder zu entfernen, nutzt man folgenden Befehl im Terminal:

net usershare delete FREIGABE 

Des Weiteren ist zu beachten, dass zum problemlosen Zugriff die Rechte des freigegebenen Ordners auf 777 geändert wurden. Möchte man das rückgängig machen, nutzt man folgenden Befehl:

chmod 755 ORDNERNAME 

Beide Vorgänge kann man auf Wunsch in einer Aktion zusammenfassen:

  • Name: Netzwerkfreigabe entfernen

  • Befehl: net usershare delete %n && chmod 755 %f

  • Dateizuordnung: *

  • Erscheint falls ausgewählt: Ordner

MP3-Playlist erstellen

MP3-Convert

Das Skript mp3Convert.sh ⮷ von xubuntu.wordpress.com 🇬🇧 gestattet es, MP3-Dateien in der Qualität zu verringern. Gründe können unter anderem sein, dass der MP3-Player höhere Bitraten nicht abspielen kann oder lediglich der Speicherplatz nicht ausreicht. Das Skript herunterladen und in den Ordner ~/.config/Thunar/actions verschieben. Dort das Skript ablegen. Nun gilt es, dieses im Terminal [2] ausführbar [3] zu machen:

mkdir -p ~/.config/Thunar/actions                    #Ordner actions anlegen
mv mp3Convert.sh ~/.config/Thunar/actions            #Skript verschieben
chmod 740 ~/.config/Thunar/actions/mp3Convert.sh     #Rechte ändern 

Um die vorgestellte Qualität (128 Kbps) zu ändern, bearbeitet man mit einem Editor [1] die Datei mp3Convert.sh.

Dateien sicher löschen

Für dieses Script werden folgende Pakete benötigt:

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren:

sudo apt-get install wipe zenity 

sudo aptitude install wipe zenity 

Das Skript thunar_secure_delete.sh ⮷:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/bin/bash
zenity --question --title="Sicher löschen" --text="Diese Dateien/Ordner entgültig löschen?\n\nHinweis: Keine Wiederherstellung möglich!";
if [ $? != 1 ]; then
	param=$#;
	zaehler=0;
	fcnt=1;
	(
	while [ "$zaehler" != $param ]
		do
		status=`expr $fcnt - 1`;
		echo $(($status*100/$param)) ;
		echo "# Lösche: $1" ;
		wipe -f -q -Q 1 -R /dev/zero -S r -r "$1";
		echo $(($fcnt*100/$param)) ;
		echo "# Gelöscht: $1" ;
		shift
		fcnt=`expr $fcnt + 1`;
		zaehler=`expr $zaehler + 1`;
		done ) |
	zenity --progress \
	    --title="Sicher löschen" \
 	   --text="initialisiere..." \
 	   --percentage=0 \
 	   --auto-close
fi

gestattet es, Dateien und Ordner durch Verwendung von wipe sicher zu löschen. Dabei werden die zu löschenden Dateien und Ordner zunächst mit Nullen überschrieben und dann gelöscht.

Das Skript erzeugt mittels Zenity eine Sicherheitsabfrage und einen Fortschrittsbalken, welcher nach erfolgreichem Löschen automatisch geschlossen wird. Das Skript herunterladen und den Ordner ~/.config/Thunar/actions erstellen (wie in obigen Beispiel für MP3-Convert). Dort das Skript ablegen. Nun gilt es, dieses im Terminal [2] ausführbar [3] zu machen:

mkdir -p ~/.config/Thunar/actions                                 ##Ordner actions anlegen
mv Downloads/thunar_secure_delete.sh ~/.config/Thunar/actions     ##Skript verschieben
chmod 740 ~/.config/Thunar/actions/thunar_secure_delete.sh        ##Rechte ändern 

Anstatt das Skript in ~/.config/Thunar/actions/ abzulegen, kann man es auch nach ~/bin/ kopieren. Damit bleibt es nicht nur auf Thunar beschränkt, sondern kann auch von anderen Dateimanagern genutzt werden. Außerdem ist das Verzeichnis ~/bin/ in der Systemvariablen $PATH enthalten. Somit lassen sich alle Skripte und Programme, die dort abgelegt oder verlinkt sind, einfach mit ihrem Namen aufrufen, ohne den Pfad voranstellen zu müssen.

Das Skript kann man auch nach /etc/skel/bin/ kopieren (Root-Rechte erforderlich!). Das Verzeichnis /etc/skel/ enthält alle Vorlagen, die bei einem neuen Benutzer in dessen Homeverzeichnis kopiert werden. Dadurch steht allen neu angelegten Usern das Skript ebenfalls zur Verfügung.

shred

Eine andere Variante, die shred statt wipe verwendet (aber nicht bei Ordnern funktioniert):

  • Name: Schredder

  • Befehl: zenity --question --text="Sind Sie sicher?";if [ $? = 0 ]; then shred -fuz %F;else exit;fi

  • Erscheint falls ausgewählt: Alles außer Ordnern

  • Symbol: Orte/user-trash

Programme mit Wine nutzen

In seltenen Fällen kann es vorkommen, dass der Wunsch besteht, bestimmte Dateien mit einem Windows-Programm zu öffnen. Das klappt allerdings nur unter der Voraussetzung, dass das jeweilige Programm fehlerfrei mit Wine funktioniert. Ein Beispiel, dass man noch entsprechend anpassen muss:

Mit GnuPG verschlüsseln

Voraussetzung ist GnuPG.

Für sich verschlüsseln

Die Datei wird mit dem eigenen GPG-Key verschlüsselt, die Ursprungsdatei N-mal überschrieben und gelöscht.

  • Name: Verschlüsseln

  • Befehl: gpg -e -r 0xGPG-KEY %f && shred -uzn N %f (GPG-KEY und N ersetzen)

  • Dateizuordnung: *

  • Erscheint falls ausgewählt: Alle Dateien

Entschlüsseln

Um die verschlüsselten Dateien wieder entschlüsseln zu können.

  • Name: Entschlüsseln

  • Befehl: terminal -x gpg -o %n.entschlüsselt -d %f

  • Dateizuordnung: *.gpg

  • Erscheint falls ausgewählt: Andere Dateien

Mit fremden Key verschlüsseln

Falls man z.B. per USB-Stick eine Datei weitergeben will, die nur vom Empfänger geöffnet werden soll, kann man auch mit dessen Key verschlüsseln. Es öffnet sich ein Terminal in dem man die Key-ID, den Namen oder die Email-Adresse eingeben muss.

  • Name: Verschlüsseln für

  • Befehl: terminal -x gpg -e %f

  • Dateizuordnung: *

  • Erscheint falls ausgewählt: Alle Dateien

Bilder verkleinern und versenden

Unter Windows XP gibt es eine Funktion, dass man in der Explorer-Bilderansicht mehrere Bilder auswählen und diese "Per E-Mail versenden" kann. Die Bilder werden automatisch verkleinert und als Anhang einer neuen E-Mail hinzugefügt. Das folgende Skript kann dies übernehmen, wenn man es unter ~/.config/Thunar/resize.sh abspeichert.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
#!/bin/bash
ALLFILES=""

# Zuerst alle Bilder verkleinern
for FILE in "$@"
do
    # Ersetze Leerzeichen durch Unterstriche
    BASENAME=`basename "$FILE" | sed 's/ /_/g'`
    rm -rf "/tmp/$BASENAME"
    convert -geometry 640x640 "$FILE" "/tmp/$BASENAME"
    ALLFILES+="--attach /tmp/$BASENAME "
done

# Nun die Bilder versenden.
xdg-email $ALLFILES

Das Skript ist sehr einfach und iteriert über alle Argumente ($@). Im /tmp-Verzeichnis wird dann mittels convert eine kleinere Version abgespeichert, die eine Maximalbreite oder -höhe von 640 Pixel hat. Dies kann man nach Belieben anpassen, unter Windows ist dies für kleine Bilder so voreingestellt. Alle Bilder werden dann in eine Liste ALLFILES gesteckt und mittels xdg-email (Standardmailprogramm) verschickt.

Editor

Komfortabler ist es, wenn man die Einträge in einem Editor [1] vornimmt. Hierzu öffnet man die Datei uca.xml im Ordner ~/.config/Thunar und bearbeitet diese. Sofern sie noch nicht existiert, kann man diese einfach anlegen. Im folgenden Beispiel ist lediglich eine benutzerdefinierte Aktion hinterlegt: Dateien des vorgegebenen Formats sollen in Audacious wiedergegeben werden:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
<?xml encoding="UTF-8" version="1.0"?>
<actions>
 <action>
 <icon>gnome-sound-properties</icon>
 <name>Spiele mit Audacious</name>
 <command>audacious %f</command>
 <description></description>
 <patterns>*.mp3,*.MP3</patterns>
 <directories/>
 <audio-files/>
 </action>
</actions>

Die Bedeutung der Elemente:

Einstellungen
ElementInhalt
<actions></actions>leitet alle Aktionen ein/aus
<action></action>leitet die gerade definierte Aktion ein/aus
<icon>BILD</icon> Name des verwendeten Icons aus /usr/share/icons/hicolor
<name>Wiki</name>Name der für den Menüeintrag verwendet wird.
<command>Test</command>Befehl, welcher für den Programmstart verwendet wird - s. ggf. Manpages
<description>ubuntuusers</description>Beschreibung der Aktion.
<patterns>*</patterns>Dateiformate die genutzt werden sollen.
<directories/>Ordner
<audio-files/>Audiodateien
<image-files/>Bilddateien
<other-files/>andere Dateien
<text-files/>Textdateien
<video-files/>Videodateien

Eigene Aktionen kann man nach obigem Muster einpflegen. Es muss lediglich der Grundaufbau beachtet werden:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
<?xml encoding="UTF-8" version="1.0"?>
<actions>
 <action>
 eigene definierte Aktion 1
 </action>
 <action>
 eigene definierte Aktion 2
 </action>
 <action>
 ...
 </action>
</actions>

Thunar kann die Aktionen direkt verwenden. Eine fertige uca.xml als Beispiel ⮷ zum Herunterladen.