• # Tu confonds fichiers, programmes et fonctions bash.

    Posté par . En réponse au message utiliser des "sous programmes" en shell. Évalué à 3.

     getNbWindows="get_number_of_window_for_workspace.sh"
     nbWorkspaces="get_number_of_worspaces.sh"
     getWindows="get_windows_on_workspace.sh"
     resize="do_resize_with_real_dimention.sh"
     move="do_move_in_real_space.sh"
     getDimension="get_util_dimension_for_screen.sh"
    
    

    tu devrais plutôt avoir :

    # contenu de get_number_of_window_for_workspace.sh
    function getNbWindows()
    {}
    
    
    # import des fonctions.
    [ -f get_number_of_window_for_workspace.sh ] && . get_number_of_window_for_workspace.sh || ( echo missing file get_number_of_window_for_workspace.sh; exit 1 )# use of function getNbWindows defined by
    # get_number_of_window_for_workspace.sh
    

    Pour l'histoire du chemin, perso pour mon .bashrc, j'utilise .bash.d.
    Tu peux alors faire :

    # bashrc extract
    # base dir.
    if [ -z "$BASH_BIN" ]; then
    BASH_BIN=~/.bash.d
    fi
    # import various bash functions.
    if [ -d "$BASH_BIN" ]; then
     for i in $BASH_BIN/*.sh; do . $i; done
    fi
    
    

    Ce qui simplifie grandement la gestion des imports et la mise à dispo des nouvelles fonctionnalités.
    BASH_BIN peut être défini ailleurs que dans le script ou prendre la valeur par défaut que tu auras spécifié.