Benutzer-Werkzeuge

Webseiten-Werkzeuge


linux:nautilusskript

Nautilus Skripte

Hin und wieder kann es sinnvoll sein, bestimmte Programme direkt im Dateibrowser Nautilus auf eine Datei anzuwenden. Sei es um automatisch Thumbnailbilder zu erstellen oder wie in meinem ersten Beispiel einen Pfad zu ermitteln. Nautilusskripte bieten hier umfangreiche Möglichkeiten. Dabei wird im Grunde nur ein Dateipfad als Variable gesetzt.

Vorbereitung

Verfügbare Variablen

Beim Ausführen aus einem lokalen Ordner werden dem Skript die Namen der gewählten Dateien übergeben. Wird es in einem entfernten Ordner (z.B. einem mit Web- oder FTP-Ordner) ausgeführt, werden keine Parameter übergeben.

In jedem Fall setzt Nautilus folgende Umgebungsvariablen, die in jedem Skript verwendet werden können:

NAUTILUS_SCRIPT_SELECTED_FILE_PATHS: Durch Zeilenvorlauf getrennte Pfade der gewählten Dateien (nur im lokalen Fall)
NAUTILUS_SCRIPT_SELECTED_URIS: Durch Zeilenvorlauf getrennte Adressen der ausgewählten Dateien
NAUTILUS_SCRIPT_CURRENT_URI: Adresse des aktuellen Ortes
NAUTILUS_SCRIPT_WINDOW_GEOMETRY: Position und Größe des aktuellen Fensters
NAUTILUS_SCRIPT_NEXT_PANE_SELECTED_FILE_PATHS:  Pfade der gewählten Dateien in der inaktiven Leiste eines Fensters mit geteilter Ansicht (nur im lokalen Fall)
NAUTILUS_SCRIPT_NEXT_PANE_SELECTED_URIS: Durch Zeilenvorlauf getrennte Adressen der gewählten Dateien in der inaktiven Leiste eines Fensters mit geteilter Ansicht
NAUTILUS_SCRIPT_NEXT_PANE_CURRENT_URI: Adresse des aktuellen Ortes in der inaktiven Leiste eines Fensters mit geteilter Ansicht

Pfeicherort

Abgelegt wird ein Skript unter .gnome2/nautilus-scripts/ mit Ausführrechten (chmod +x) - Leerzeichen sind erlaubt. Dateiname kann so z. B. „Kopiere yourSE WebURL“ sein.

Bedienung

Das Skript wird ausgeführt indem man eine Datei markiert und im Rechtsklick-Kontextmenü Skripte > Skriptname auswählt.

Copy WebURL

Wenn man Nautilus als FTP-, SFTP-Client nutzt kann es manchmal hilfreich sein, von einer Datei per Rechtsklick die Webadresse zu bekommen. Folgendes Skript kopiert die URL direkt in die Zwischenablage.

Skript

#!/bin/bash
# Nautilus Skript. Kopiert den HTTP-Pfad einer Datei von einem entfernten 
# Rechner (FTP, SFTP, etc.) in die Zwischenablage 
 
http_adress='http://example.de'
remote_adress='sftp://example.de/home/test/htdocs'
 
# Entfernt remote_adress aus der Pfadangabe von Nautilus
path=${NAUTILUS_SCRIPT_SELECTED_URIS##$remote_adress}
 
# Kopiert die HTTP-Adresse in die Zwischenablage (mittlere Maustaste)
echo $http_adress$path | xclip
# Kopiert die Adresse in alle Zwischenablagen (Strg+V und Maus einfügen)
xclip -o | xclip -sel clip

Vorbereitung

Damit das Skript funktioniert muss xclip installiert sein. Anschließend müssen nur die Variablen http_adress und remote_adress geändert werden. Im folgendenen noch ein Beispiel für einen FTP-Account.

Beispiel

http_adress='http://members.example.de/user'
remote_adress='ftp://user@members.example.de'

Starter anlegen

Mit GNOME3 sind einige sinnvolle Funktionen, wie das Starter anlegen, per Rechtsklick entfallen. Folgendes Skript, legt einen Starter auf dem Desktop an und öffnet gnome-desktop-item-edit zur Feinbearbeitung. Dateipad und Name werden aus der, per rechtsklick, ausgewählten Datei direkt ermittelt.

Skript

#!/bin/bash
# Nautilus Skript. Neuer Starter per Rechtsklick. Name und Befehl werden automatisch ausgefüllt. 
 
path=$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS
 
# filename with extension
file=$(basename $path)
name=$(echo ${file%.*})
 
echo "#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[de_DE]=
Name[de_DE]=$name
Exec=$path
Name=$file
Icon=" > ~/Desktop/$file.desktop
 
chmod +x ~/Desktop/$file.desktop
/usr/bin/gnome-desktop-item-edit ~/Desktop/$file.desktop
linux/nautilusskript.txt · Zuletzt geändert: 2014/03/16 18:08 (Externe Bearbeitung)