Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
nautilus_scripts [Le 01/06/2021, 18:01]
Amiralgaby suppression de contenu obsolète (la page en elle-même est énormément obsolète)
nautilus_scripts [Le 17/01/2024, 11:40] (Version actuelle)
arverne73 orthographe
Ligne 1: Ligne 1:
-{{tag>Xenial ​nautilus}}+{{tag>Jammy nautilus}}
  
 ---- ----
Ligne 21: Ligne 21:
  
 Le chemin des scripts pour : Le chemin des scripts pour :
-  * Caja (Mate) est : **~/​.config/​caja/​scripts**. +  * Caja (Mate) est : ''​~/​.config/​caja/​scripts''​ 
-  * Nautilus (Gnome/​Unity) est : **~/​.local/​share/​nautilus/​scripts** +  * Nautilus (Gnome/​Unity) est : ''​~/​.local/​share/​nautilus/​scripts''​ 
-  * Némo (Cinnamon) est : **~/​.local/​share/​nemo/​scripts/​**+  * Némo (Cinnamon) est : ''​~/​.local/​share/​nemo/​scripts/​''​
  
 Voir aussi: Voir aussi:
Ligne 44: Ligne 44:
   * [[https://​www.linux-apps.com/​content/​show.php/​Nautilus+Scripts+Pack+Mini?​content=85788|Nautilus Scripts Pack Mini]]   * [[https://​www.linux-apps.com/​content/​show.php/​Nautilus+Scripts+Pack+Mini?​content=85788|Nautilus Scripts Pack Mini]]
   * [[https://​www.linux-apps.com/​content/​show.php/​Nautilus+Scripts+Pack?​content=90330|Nautilus Scripts Pack]]   * [[https://​www.linux-apps.com/​content/​show.php/​Nautilus+Scripts+Pack?​content=90330|Nautilus Scripts Pack]]
-  * [[https://​www.linux-apps.com/​content/​show.php/​NScripts?​content=67655|NScripts]] 
   * [[https://​www.linux-apps.com/​content/​show.php/​NScripts+Ultimate?​content=68599|NScripts Ultimate]]   * [[https://​www.linux-apps.com/​content/​show.php/​NScripts+Ultimate?​content=68599|NScripts Ultimate]]
   * [[https://​www.linux-apps.com/​content/​show.php/​Ultimate+Edition+Nautilus+Scripts+Pack?​content=104451|Ultimate Edition Nautilus Scripts Pack]]   * [[https://​www.linux-apps.com/​content/​show.php/​Ultimate+Edition+Nautilus+Scripts+Pack?​content=104451|Ultimate Edition Nautilus Scripts Pack]]
Ligne 56: Ligne 55:
   * [[https://​www.linux-apps.com/​content/​show.php/​Audio%2BVideo%2BImage%2BText%2BISO+Convert?​content=92533|Audio/​Video/​Image/​Text/​ISO Convert]] (nécessite au [[apt>​xterm,​zenity,​ffmpeg,​imagemagick,​amrwb,​faac,​faad2,​ffmpeg-libs,​gpac,​gstreamer-ffmpeg,​gstreamer-plugins-*,​xmms2-avcodec,​xmms2-,​wma|moins ça]], ou [[apt>​xterm,​zenity,​ffmpeg,​imagemagick,​amrwb,​faac,​faad2,​ffmpeg-libs,​gpac,​gstreamer-ffmpeg,​gstreamer-plugins-*,​xmms2-avcodec,​xmms2-,​wma,​curl,​links,​kdegraphics,​espeak,​faac,​faad2,​antiword,​unrtf,​odt2txt,​txt2tags,​libavcodec-unstripped-52,​AcetoneISO,​nrg2iso,​daa2iso,​cdd2iso,​uif|tout ça]]).   * [[https://​www.linux-apps.com/​content/​show.php/​Audio%2BVideo%2BImage%2BText%2BISO+Convert?​content=92533|Audio/​Video/​Image/​Text/​ISO Convert]] (nécessite au [[apt>​xterm,​zenity,​ffmpeg,​imagemagick,​amrwb,​faac,​faad2,​ffmpeg-libs,​gpac,​gstreamer-ffmpeg,​gstreamer-plugins-*,​xmms2-avcodec,​xmms2-,​wma|moins ça]], ou [[apt>​xterm,​zenity,​ffmpeg,​imagemagick,​amrwb,​faac,​faad2,​ffmpeg-libs,​gpac,​gstreamer-ffmpeg,​gstreamer-plugins-*,​xmms2-avcodec,​xmms2-,​wma,​curl,​links,​kdegraphics,​espeak,​faac,​faad2,​antiword,​unrtf,​odt2txt,​txt2tags,​libavcodec-unstripped-52,​AcetoneISO,​nrg2iso,​daa2iso,​cdd2iso,​uif|tout ça]]).
   * [[https://​www.linux-apps.com/​content/​show.php/​avi+%26+mp4+converter?​content=64899|avi & mp4 convertisseur.]]   * [[https://​www.linux-apps.com/​content/​show.php/​avi+%26+mp4+converter?​content=64899|avi & mp4 convertisseur.]]
-  * [[https://​www.linux-apps.com/​content/​show.php/​PDF+to+PNG?​content=83110|PDF to PNG]]+  * [[https://​www.linux-apps.com/​content/​show.php/​PDF+to+PNG?​content=83110|PDF to PNG]] //script non disponible sur ce lien//
   * [[:​pdftohtml|pdf to html]]   * [[:​pdftohtml|pdf to html]]
   * [[timidity#​script pour convertir un fichier midi vers un fichier audio|Convertir un fichier MIDI vers un fichier audio]] (nécessite [[timidity|TiMiDiTy]])   * [[timidity#​script pour convertir un fichier midi vers un fichier audio|Convertir un fichier MIDI vers un fichier audio]] (nécessite [[timidity|TiMiDiTy]])
Ligne 62: Ligne 61:
 ==== Image ==== ==== Image ====
  
-  * [[https://www.linux-apps.com/content/show.php/Resize+Image?​content=110541|Changer ​la taille ​des images.]] Resize Image+  * [[http://benn.org/​software/​nautilus-resize-image/​|Retailler image]] (Resize-Image) :​ Script datant de 2009 mais toujours fonctionnel et très efficaceDescriptif d'​installation à lire mais qui doit être un peu aménagé : le répertoire proposé pour l'​enregistrement du script ~/.gnome2n'​existe plus mais peut être remplacé par n'​importe quel répertoire personnelPour chaque taille d'​image,​ il faut créer un lien vers ce script. 
 + 
 +Dans un terminal, aller dans le répertoire ~/.local/​share/​nautilus/​scripts/​ (facilement,​ taper ''​cd+espace''​ puis tirer ce dossier scripts sur le terminal puis la touche '​Entrée'​). Taper alors, par exemple, la commande suivante pour la taille ​600 pixels : <​code>​ln -s ~/chemin d'​enregistrement script/​ResizeImage.sh "​Retailler image (600px)"</​code>​ 
 +(Comme pour la commande précédente,​ après ''​ln -s '',​ il suffit de tirer le script //​ResizeImage//​ sur le terminal pour que le chemin s'​inscrive automatiquement). 
 + 
 +Faire de même pour toutes les autres tailles prévues dans le script. 
   * Ajouter "​Redimensionner les images..."​ dans le menu contextuel des images. [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​nautilus-image-converter]]** puis redémarrer la session.   * Ajouter "​Redimensionner les images..."​ dans le menu contextuel des images. [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​nautilus-image-converter]]** puis redémarrer la session.
  
Ligne 73: Ligne 78:
 ==== Gestion des fichiers ==== ==== Gestion des fichiers ====
  
-  * [[https://​www.linux-apps.com/​content/​show.php/​Send+to...?​content=67627|Envoyer vers - Send to...]]+  * [[https://​www.linux-apps.com/​content/​show.php/​Send+to...?​content=67627|Envoyer vers - Send to...]] ​//script non disponible sur ce lien//
   * [[https://​www.linux-apps.com/​content/​show.php/​Encrypt%2BDecrypt+Files?​content=74653|Encrypter/​Decrypter les fichiers]] (nécessite gpg)   * [[https://​www.linux-apps.com/​content/​show.php/​Encrypt%2BDecrypt+Files?​content=74653|Encrypter/​Decrypter les fichiers]] (nécessite gpg)
   * [[https://​www.linux-apps.com/​content/​show.php/​Remove+Spaces?​content=76200|Retirer les espaces des fichiers et dossiers (et les remplacer par underscore).Remove Spaces.]]   * [[https://​www.linux-apps.com/​content/​show.php/​Remove+Spaces?​content=76200|Retirer les espaces des fichiers et dossiers (et les remplacer par underscore).Remove Spaces.]]
-  * [[http://​g-scripts.sourceforge.net/​nautilus-scripts/​File%20System%20Management/​envoiftp|Envoie de fichier ​par ftp]].+  * [[http://​g-scripts.sourceforge.net/​nautilus-scripts/​File%20System%20Management/​envoiftp|Envoyer des fichiers ​par ftp]].
   * [[http://​g-scripts.sourceforge.net/​nautilus-scripts/​File%20Processing/​Misc/​send_file_%20as_email_attachment_-_Thunderbird|Envoyer les fichiers en pièce-jointe de thunderbird]]   * [[http://​g-scripts.sourceforge.net/​nautilus-scripts/​File%20Processing/​Misc/​send_file_%20as_email_attachment_-_Thunderbird|Envoyer les fichiers en pièce-jointe de thunderbird]]
-  * [[http://​soft.freem2.fr/​2010/​05/​21/​envoyer-des-fichiers-avec-thunderbird/​|Envoyer les fichiers en pièce-jointe de thunderbird(amélioré)]] -lien mort- 
   * [[:​dossiers_et_fichiers_caches#​script_automatique|Masquer/​afficher des fichiers]]   * [[:​dossiers_et_fichiers_caches#​script_automatique|Masquer/​afficher des fichiers]]
  
Ligne 86: Ligne 90:
   * [[https://​www.linux-apps.com/​content/​show.php/​Make+MD5+sums?​content=69749|Vérifier le MD5]].   * [[https://​www.linux-apps.com/​content/​show.php/​Make+MD5+sums?​content=69749|Vérifier le MD5]].
   * [[https://​www.linux-apps.com/​content/​show.php/​Make%2BCheck+SFV?​content=68362|Vérifier avec le SFV]].   * [[https://​www.linux-apps.com/​content/​show.php/​Make%2BCheck+SFV?​content=68362|Vérifier avec le SFV]].
-  ​* [[https://​www.linux-apps.com/​content/​show.php/​Renamer?​content=87601|Renommer les fichiers.]] Renamer. +  * [[https://​www.linux-apps.com/​content/​show.php/​Terminal+Here?​content=73250|Ouvrir un Terminal ici]]
-  ​* [[https://​www.linux-apps.com/​content/​show.php/​Terminal+Here?​content=73250|Ouvrir un Terminal ici (répertoire actuel).Terminal Here.]]+
   * [[https://​www.linux-apps.com/​content/​show.php/​Open+Nautilus+as+Root?​content=73610|Ouvrir Nautilus en root.]]   * [[https://​www.linux-apps.com/​content/​show.php/​Open+Nautilus+as+Root?​content=73610|Ouvrir Nautilus en root.]]
   * [[https://​www.linux-apps.com/​content/​show.php/​Remove+~.~%2C.bak.old.OLD.BAK_curr_directo?​content=73733|Nettoyer les ~.~,​.bak.old.OLD.BAK_curr_directo]]   * [[https://​www.linux-apps.com/​content/​show.php/​Remove+~.~%2C.bak.old.OLD.BAK_curr_directo?​content=73733|Nettoyer les ~.~,​.bak.old.OLD.BAK_curr_directo]]
Ligne 95: Ligne 98:
   * [[https://​www.linux-apps.com/​content/​show.php/​Make+DEB+Package?​content=79785|Faire un fichier deb]] ( plus facilement ).   * [[https://​www.linux-apps.com/​content/​show.php/​Make+DEB+Package?​content=79785|Faire un fichier deb]] ( plus facilement ).
   * [[https://​www.linux-apps.com/​content/​show.php/​dot-tree?​content=105395|Visualisation des dossiers en arbre.]] dot-tree   * [[https://​www.linux-apps.com/​content/​show.php/​dot-tree?​content=105395|Visualisation des dossiers en arbre.]] dot-tree
-  * [[http://​www.schnuckelig.eu/​story/​resurection-nautilus-cvs-scripts|Le CVS depuis Nautilus - Nautilus CVS scripts]] ​ 
  
 ==== Internet ==== ==== Internet ====
  
   * [[https://​www.linux-apps.com/​content/​show.php/​sendToImageshack?​content=100952|Envoyer sur imageshack]].   * [[https://​www.linux-apps.com/​content/​show.php/​sendToImageshack?​content=100952|Envoyer sur imageshack]].
-  * [[http://​forum.ubuntu-fr.org/​viewtopic.php?​pid=1424293#​33|Envoyer sur dl.free.fr]] ​+  * [[http://​forum.ubuntu-fr.org/​viewtopic.php?​pid=1424293#​33|Envoyer sur dl.free.fr]]
   * [[http://​www.xorax.info/​blog/​news/​200-script-dl-free-fr-automatique.html|script automatique pour télécharger sur dl.free.fr]]   * [[http://​www.xorax.info/​blog/​news/​200-script-dl-free-fr-automatique.html|script automatique pour télécharger sur dl.free.fr]]
-  * [[http://​blog.anandkapre.com/​2009/​ubuntu/​08-19-ubuntu-linux-rapidshare-right-click-uploader/​|Rapidshare Multiple Uploader.]] ( [[http://​www.ubuntu-inside.me/​2009/​08/​one-click-multi-rapidshare-uploader.html|mirroir 1]], [[http://​ubuntuforums.org/​archive/​index.php/​t-974303.html|miroir 2]]) 
-  * [[http://​forum.ubuntu-fr.org/​viewtopic.php?​id=384599|Upload sur Megaupload (site fermé)]] 
  
 ==== Divers ==== ==== Divers ====
  
-  * [[https://​www.linux-apps.com/​content/​show.php/​Simple+alarm?​content=111811|Lancer une Alarme à une heure donnée]] aussi [[http://​forum.ubuntu-fr.org/​viewtopic.php?​pid=6755501#​p6755501|ici]],​ 
-  * [[http://​gnome-look.org/​content/​show.php/​Nautilus+Extension+Kill+Thumbs?​content=92143|Supprimer automatiquement les fichiers Thumbs.db de vos répertoires]],​ 
-  * [[https://​www.linux-apps.com/​content/​show.php/​Automated+Font+Installer?​content=67610|Installation de police]], 
-  * [[https://​www.linux-apps.com/​content/​show.php/​TTF+Font+Manager?​content=82473|TTF Font Manager]], 
   * [[https://​www.linux-apps.com/​content/​show.php/​download_opensubtitle?​content=68085|Télécharger les sous-titres sur download_opensubtitle]].   * [[https://​www.linux-apps.com/​content/​show.php/​download_opensubtitle?​content=68085|Télécharger les sous-titres sur download_opensubtitle]].
  
 +===== Créer un script =====
 +Il vous suffit d'un [[editeur_de_texte|éditeur de texte]] pour écrire votre script.
 +
 +Pour créer un script il faut être familier avec un langage de script : la façon la plus simple et répandue est avec [[:Bash]].
 +Les langages [[:python]] et [[:Perl]] son parfois utilisés.
 +
 +Chaque fois qu'un script est appelé, Nautilus définit automatiquement des variables qui peuvent être utilisées dans vos scripts.
 +  - ''​NAUTILUS_SCRIPT_SELECTED_FILE_PATHS''​\\ Chemins des fichiers délimités par un espace.\\ ​
 +  - ''​NAUTILUS_SCRIPT_SELECTED_URIS''​\\ URI délimitées par un espace.\\ ​
 +  - ''​NAUTILUS_SCRIPT_CURRENT_URI''​\\ L'URI où il y a eu la séléction.\\ ​
 +  - ''​NAUTILUS_SCRIPT_WINDOW_GEOMETRY''​\\ Position et taille de la fenêtre Nautilus au format **largeurxhauteur+pos_horizontale+pos_vertical**.\\ ​
 +
 +<note help>
 +Dans certains cas, les chemins peuvent être séparés par une espace et pas par un retour à la ligne.
 +Si un lecteur a des précisions,​ merci de contacter la [[:​wiki:​liste_discussion|liste de discussion de la documentation]].
 +</​note>​
 +
 +Il existe des outils d'​analyse de scripts pour savoir s'il respecte les bonnes pratiques. Pour le langage bash il existe
 +**[[apt>​shellcheck]]**.
  
 ===== Les pièges à éviter ===== ===== Les pièges à éviter =====
Ligne 120: Ligne 135:
 ==== Attention en utilisant les arguments passés aux scripts ​ ==== ==== Attention en utilisant les arguments passés aux scripts ​ ====
  
-**Nautilus** passe en argument les noms des fichiers sélectionnés. Par exemple, si vous êtes dans **/​home/​user**,​ et que vous appliquez le script sur **toto** et **titi**, $PWD et $NAUTILUS_SCRIPT_CURRENT_URI ​vaudront ​'/​home/​user'​$1 vaudra '​toto'​ et $2 vaudra '​titi'​.+Nautilus passe en argument les noms des fichiers sélectionnés. Par exemple, si vous êtes dans **/​home/​user**,​ et que vous appliquez le script sur **toto** et **titi**, ​''​$PWD''​ vaudra '/​home/​user' ​et ''​$NAUTILUS_SCRIPT_CURRENT_URI'​' vaudra '​file:​%%///%%home/​user' ​.''​$1'' ​vaudra '​toto'​ et ''​$2'' ​vaudra '​titi'​.
  
-Premier problème, ​**Nautilus** offre une vue liste (qui pourrait d'​ailleurs se nommer "​arborescente"​),​ on peut donc sélectionner des fichiers qui sont dans des sous-répertoires du répertoire courant.+Premier problème, Nautilus offre une vue liste (qui pourrait d'​ailleurs se nommer "​arborescente"​),​ on peut donc sélectionner des fichiers qui sont dans des sous-répertoires du répertoire courant.
  
-Il **faut donc éviter** utiliser des scripts du genre :+Il **faut donc proscrire** d'utiliser des scripts du genre :
  
 <code bash> <code bash>
 for arg for arg
 do do
-  do_something ​"$arg"+  do_something $arg
 done done
 </​code>​ </​code>​
- 
 ou ou
- 
 <code bash> <code bash>
-for arg in "$@"+for arg in $@
 do do
   do_something "​$arg"​   do_something "​$arg"​
Ligne 142: Ligne 155:
 </​code>​ </​code>​
  
-Ces scripts ne marcheraient pas dans tous les cas. Normalement,​ ce problème est corrigé dans Gnome 2.23 (Ubuntu ≥ 8.10). +**Nautilus** fournit une variable ''​$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS'',​ qui contient la liste des chemins complets des fichiers sélectionnés,​ séparés par '​\n'​ (retour à la ligne).
- +
-Mais, même une fois corrigé, la méthode suivante devrait poser moins de problèmes (car on obtient directement la liste des chemins complets des fichiers). +
- +
-Heureusement, ​**Nautilus** fournit une variable ''​$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS'',​ qui contient la liste des chemins complets des fichiers sélectionnés,​ séparés par '​\n'​ (retour à la ligne).+
 C'est donc cette variable qu'il faut utiliser. Par exemple : C'est donc cette variable qu'il faut utiliser. Par exemple :
 <code bash> <code bash>
 #!/bin/bash #!/bin/bash
- +function ​afficherFichier ​() {  
-function ​faireQqChose ​() { + zenity --info --text "le fichier est $*" ​
- zenity --info --text "le fichier est $@"+
 } }
  
 IFS=$'​\n'​ # on limite le IFS aux sauts de ligne IFS=$'​\n'​ # on limite le IFS aux sauts de ligne
-faireQqChose ​$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS +afficherFichier "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"
- +
-exit 0+
 </​code>​ </​code>​
- 
-<note help> 
-Dans certains cas, les chemins peuvent être séparés par une espace et pas par un retour à la ligne. 
-Si un lecteur a des précisions,​ merci de contacter la [[:​wiki:​liste_discussion|liste de discussion de la documentation]]. 
-</​note>​ 
  
 ==== Itérer sur les fichiers ==== ==== Itérer sur les fichiers ====
Ligne 172: Ligne 173:
  
 <code bash> <code bash>
-for arg in "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"+for arg in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS
 do do
   do_something "​$arg"​   do_something "​$arg"​
Ligne 178: Ligne 179:
 </​code>​ </​code>​
  
-**n'​est pas correct**, car si les chemins sont '/​tmp/​a b/c' et '/​tmp/​d e', la boucle fera 4 itérations : '/​tmp/​a',​ '​b/​c',​ '/​tmp/​d'​ et '​e'​. +**n'​est pas correct ​sans les guillemets aux variables**, car si les chemins sont '/​tmp/​a b/c' et '/​tmp/​d e', la boucle fera 4 itérations : '/​tmp/​a',​ '​b/​c',​ '/​tmp/​d'​ et '​e'​.
- +
-Une première solution est de faire :+
  
 +La même solution d'une autre manière :
 <code bash> <code bash>
 printf %s "​$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"​ | printf %s "​$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"​ |
Ligne 191: Ligne 191:
  
 Il ne faut pas utiliser **echo** (en **sh**, il ne fonctionnerait pas sur un fichier contenant un '​\'​ suivi d'un '​n'​),​ et il faut bien passer l'​argument **-r** à **read** (même raison). Il ne faut pas utiliser **echo** (en **sh**, il ne fonctionnerait pas sur un fichier contenant un '​\'​ suivi d'un '​n'​),​ et il faut bien passer l'​argument **-r** à **read** (même raison).
- 
 Une seconde solution est de changer l'​[[wp>​Input_Field_Separators|IFS]] : Une seconde solution est de changer l'​[[wp>​Input_Field_Separators|IFS]] :
  
Ligne 197: Ligne 196:
 IFS=' IFS='
 ' '
-for arg in "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"+for arg in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS
 do do
   do_something "​$arg"​   do_something "​$arg"​
Ligne 203: Ligne 202:
 </​code>​ </​code>​
  
-Ainsi, chaque argument sera une ligne de $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS. +Ainsi, chaque argument sera une ligne de ''​$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS''​.\\ 
 On peut aussi vouloir passer tous les arguments à un autre script (sans itérer) : On peut aussi vouloir passer tous les arguments à un autre script (sans itérer) :
  
Ligne 210: Ligne 208:
 IFS=' IFS='
 ' '
-do_something ​"$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"+do_something $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS
 </​code>​ </​code>​
  
 Si vous respectez ceci, votre script fonctionnera aussi bien en **/​bin/​bash** qu'en **/bin/sh** (du moins pour cette partie) et pour tous les fichiers, mêmes les cas particuliers. Si vous respectez ceci, votre script fonctionnera aussi bien en **/​bin/​bash** qu'en **/bin/sh** (du moins pour cette partie) et pour tous les fichiers, mêmes les cas particuliers.
- 
 Après divers test voici une solution qui fonctionne même si le nom de fichier ou dossier contient des espaces, virgules ou autres caractères spéciaux : Après divers test voici une solution qui fonctionne même si le nom de fichier ou dossier contient des espaces, virgules ou autres caractères spéciaux :
 utiliser la commande **find** ! utiliser la commande **find** !
Ligne 252: Ligne 249:
 <code bash> <code bash>
 #!/bin/bash #!/bin/bash
-# C'est sérieux il ne faut pas en abuser+# C'est sérieux il ne faut pas jouer avec les droits root
 notify-send "si vous ne savez pas ce que vous faites, fermez la fenêtre"​ notify-send "si vous ne savez pas ce que vous faites, fermez la fenêtre"​
-pkexec --user root vim "​$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"​+gnome-terminal -- pkexec --user root vim "​$(realpath ​"​$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS")"
 </​code>​ </​code>​
- 
-=== Ouvrir Nautilus dans le répertoire choisi avec les privilèges « root » === 
-<note warning>​Cela ne doit en réalité jamais arriver</​note>​ 
- 
-==== Ouvrir un terminal ici ==== 
-**Nautilus Open Terminal** permet d'​ouvrir un terminal directement dans le répertoire courant de Nautilus //via// un clic droit → //Ouvrir dans un terminal//. 
- 
-Pour l'​utiliser,​ il suffit d'​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt>​nautilus-open-terminal]]** et ensuite de redémarrer la session. 
  
 ==== Lire les fichiers du répertoire avec Rhythmbox ==== ==== Lire les fichiers du répertoire avec Rhythmbox ====
Ligne 270: Ligne 259:
 <code bash> <code bash>
 #!/bin/sh #!/bin/sh
-base="​$(echo $NAUTILUS_SCRIPT_CURRENT_URI | cut -d'/'​ -f3- | sed '​s/​%20/​ /​g'​)"​+ 
 +base="​$(echo ​"$NAUTILUS_SCRIPT_CURRENT_URI" ​| cut -d'/'​ -f3- | sed '​s/​%20/​ /​g'​)"​
  
 if [ -z "​$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"​ ]; then if [ -z "​$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"​ ]; then
    ​dir="​$base"​    ​dir="​$base"​
 else else
-   while [ -"​$1" ​-a ! -d "​$base/​$1"​ ]; do shift; done + while [ -"​$1" ​] && [ ! -d "​$base/​$1"​ ]; do shift; done 
-   ​dir="​$base/​$1"​+ dir="​$base/​$1"​
 fi fi
  
-if [ "​$NAUTILUS_SCRIPT_CURRENT_URI" ​== "​x-nautilus-desktop:///"​ ]; then+if [ "​$NAUTILUS_SCRIPT_CURRENT_URI"​ = "​x-nautilus-desktop:///"​ ]; then
 dir="​Desktop"​ dir="​Desktop"​
 fi fi
  
-if [ "​$NAUTILUS_SCRIPT_CURRENT_URI" ​== "​trash:"​ ]; then+if [ "​$NAUTILUS_SCRIPT_CURRENT_URI"​ = "​trash:"​ ]; then
 dir="​$HOME/​.Trash"​ dir="​$HOME/​.Trash"​
 fi fi
  
-if [ "​$NAUTILUS_SCRIPT_CURRENT_URI" ​== "​file:///"​ ]; then+if [ "​$NAUTILUS_SCRIPT_CURRENT_URI"​ = "​file:///"​ ]; then
 dir="/"​ dir="/"​
 fi fi
  
-FIRST_URI="​`echo -n $NAUTILUS_SCRIPT_SELECTED_URIS`" +FIRST_URI="​$NAUTILUS_SCRIPT_SELECTED_URIS"​
-if [ "​$FIRST_URI"​ == "​x-nautilus-desktop:///​home"​ ]; then +
-dir="​$HOME"​ +
-fi+
  
-if [ "​$FIRST_URI"​ == "​x-nautilus-desktop:///​computer"​ ]; then +if [ "​$FIRST_URI"​ = "​x-nautilus-desktop:///​home"​ ]; then 
-dir="/"​+ dir="​$HOME"​ 
 +elif [ "​$FIRST_URI" ​= "​x-nautilus-desktop:///​computer"​ ]; then 
 + dir="/"​
 fi fi
 +
 rhythmbox "​$dir"​ rhythmbox "​$dir"​
 </​code>​ </​code>​
Ligne 329: Ligne 319:
   * [[https://​wiki.ubuntu.com/​NautilusScriptsHowto|traduction]]   * [[https://​wiki.ubuntu.com/​NautilusScriptsHowto|traduction]]
   * [[https://​www.linux-apps.com/​browse/​cat/​126/​order/​latest|Scripts pour Nautilus sur gtk-apps.org]]   * [[https://​www.linux-apps.com/​browse/​cat/​126/​order/​latest|Scripts pour Nautilus sur gtk-apps.org]]
-  * [[http://​g-scripts.sourceforge.net/​|Site officiel de nautilus script, avec quelques scripts]] ​+  * [[http://​g-scripts.sourceforge.net/​|Site officiel de nautilus script, avec quelques scripts]]
 ---- ----
  
-//​Contributeurs : [[utilisateurs:​FredB]],​ [[utilisateurs:​l_africain|L'​Africain]] ​ [[utilisateurs:​Fabien26]] (1<​sup>​re</​sup>​ actualisation)[[:​utilisateurs:​ner0lph|Floriang]].//​+//​Contributeurs : [[utilisateurs:​FredB]],​ [[utilisateurs:​l_africain|L'​Africain]][[utilisateurs:​Fabien26]](1<​sup>​ère</​sup>​ actualisation) [[:​utilisateurs:​ner0lph|Floriang]], (2<​sup>​ème</​sup>​ actualisation) [[:​utilisateurs:​Amiralgaby|Amiralgaby]].//
  • nautilus_scripts.1622563283.txt.gz
  • Dernière modification: Le 01/06/2021, 18:01
  • par Amiralgaby