[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Changer le répertoire courant ?




On 5/22/20 5:59 AM, ptilou wrote:
Slt,

#!/bin/bash 

function f_image-fusion { 
        
         ffmpeg -i $0 image%d.jpg 
        } 
{ 
  find ./ -iname \*.mp4 
  echo "EOF" 
                } | { 
             while true; do 
             read -r i 
             test "$i" = "EOF" && break 
             f_image-fusion "$i" 
        done 
        } 
Je fais cela sur dés répertoire, et j’aurai aimer rediriger la sortie de la fonction  f_image-fusion sur un autre répertoire que le courant, sans avoir à imbriquer une autre boucle est-ce que c’est possible ?


Et comment ?
Merci


Il convient de lire (en anglais) Advanced Linux Programming puis syscalls(2) puis execve(2) puis fork(2) puis credentials(7) puis bash(1)

Le répertoire courant (voir getcwd(3) ...) est propre à chaque processus. En particulier à celui créé par l’exécution de ton script ou bien à celui exécutant le shell de ton terminal.

Une possibilité serait de complexifier ton script (par exemple avec getopt(1) ...) pour y ajouter une option qui modifie le répertoire courant du shell exécutant ton script.

Une suggestion serait de changer de langage de script, et prendre par exemple Guile ou Python ou Lua. Je les trouve tous plus lisibles et permettant des scripts plus concis et plus maintenables qu'avec bash (ou même zsh).

Bien évidemment, Guile comme Python comme Lua sont packagés par Debian.

-- 
Basile STARYNKEVITCH   == http://starynkevitch.net/Basile
opinions are mine only - les opinions sont seulement miennes
Bourg La Reine, France; <basile@starynkevitch.net>
(mobile phone: cf my web page / voir ma page web...)

Reply to: