Frédéric GALUSIK <openbsd_at_galusik.fr> : > Intéressant. As tu une marche à suivre , un exemple ? Le script aurait besoin d'être nettoyé des trucs persos avant publication mais le principe est simple, récupérer le contenu du clic droit ou de la sélection dans une variable, par exemple : [ "$1" ] && f="$1" || \ { xcb=$(xsel -b --display ':0' -o) [ "$xcb" ] && { f="$xcb" xsel -b -c } || { f=$(xsel -p --display ':0' -o) xsel -p -c } } Vérif qu'on a bien quelque chose à traiter et passer dans un terminal si on est pas déjà dedans : [ ! "$f" ] && { msg='Nothing given to download, abort' _die } [ ! -t 0 ] && { exec st -e "$0" "$f" } Tout ce qui précède semble devoir être fait dans un autre ordre mais je préfère ne faire apparaître de nouvelle fenêtre de terminal que s'il y aura vraiment quelque chose à faire dedans. Exemple de case : case "$f" { https://soundcloud.com/* ) youtube-dl --youtube-skip-dash-manifest -f best \ --no-part --no-playlist "$f" ;; _at_(ftp://*|*.diff|*.patch) ) ftp "$f" ;; _at_(git://*|*.git|http?(s)://github.com/*/*) ) [[ "$f" = *.git ]] && \ ndir=$(basename "${f%.*}") || \ ndir="${f##*/}" git clone "$f" ;; # etc … } # Ici d'autres trucs selon des variables éventuellement # initialisées dans le case ou plus tôt ls exec ksh Même sans être le script complet, ça donne déjà une idée. -- JulienReÇu le 21/05/2020 00:51
Cette archive a été créée par hypermail 2.3.0 : 11/03/2021 09:22 CET