Table des matières
Caja est le gestionnaire de fichiers officiel de l’environnement MATE.
Script
Je voulais ajouter des possibilités de click droit via des scripts.
C’est assez simple, il suffit de placer une exécutable dans le dossier ./config/caja/script de votre répertoire /home.
Variables
Quelques variables pour utiliser les scripts.
*$@* Fichiers sélectionnés
*$PWD* Répertoire courant
*$CAJA_SCRIPT_SELECTED_FILE_PATHS*
Chemin des fichiers sélectionnés.
*$CAJA_SCRIPT_SELECTED_URI*
URI des fichiers sélectionnés, pour les fichiers distants.
*$CAJA_SCRIPT_CURRENT_URI*
URI du dossier depuis lequel le script est lancé.
Astuce: Dans le cas de multiples sélections, les chemins/URI sont séparés par des retours à la ligne.
On va tester dans un script en créant un fichier test dans le dossier .config/caja/script.
#!/bin/bash
exec &>> "$(basename "$0").log"
echo "\$@=$@"
echo "\$1=$1"
echo
echo "PWD=$PWD"
echo "$CAJA_SCRIPT_SELECTED_FILE_PATHS"
echo "$CAJA_SCRIPT_SELECTED_URI"
echo "$CAJA_SCRIPT_CURRENT_URI"
Il faut autoriser l’exécution.
$ chmod +x test
Avec caja, on fait un clic droit sur un fichier et on obtient un fichier test.log
$@=checksum
$1=checksum
PWD=/home/tuxien/.config/caja/scripts
/home/tuxien/.config/caja/scripts/checksum
file:///home/tuxien/.config/caja/scripts
Exemple de script
On va convertir des images au format Webp (j’utilise ce format pour mes articles dans Hugo) en utilisant le langage Python.
Toujours dans le dossier de travail .config/caja/script/.
#!/usr/bin/python3
import os
import sys
def new_name(file):
os.path.splitext(file)
return '.'.join([os.path.splitext(file)[0],'webp'])
files = sys.argv[1:]
for file in files:
os.system('cwebp -q 90 %s -o %s' % (file, new_name(file)))
Quelques scripts en PJ, bien regarder les dépendances comme zenity pour afficher des infos.
Téléchargement
Liens
https://doc.ubuntu-fr.org/caja
https://gist.github.com/bitsgalore/fc69e55c67830413f97c
https://www.pragmageek.fr/2022/01/la-bonne-maniere-de-faire-un-script-nautilus-en-bash/
Métadonnées
Posté le: 25.03.2024
Nombre de mots: 233
Temps de lecture: 2 minutes
Outsphere - Guy-Roger Duvert Outresable - Hugh Howey