Modifier une fonction shell

Dans le cas d’une fonction dont on ne possède pas la paternité, on veux pouvoir profiter des mises à jour de la fonction mais sont état ne nous convient pas totalement. Par exemple la fonction suivante est pratique mais elle rejoue des tests qui, pour mon cas à moi, sont vraiment long et que je veux pouvoir skiper.

mvnwatch () {
        if [ "$#" -eq 0 ]
        then
                WISDOM_DEV_SERVER=/home/lo/workspace/longback/wisdom-dev-server
                ASSDIR=${WISDOM_DEV_SERVER}/target/wisdom/application/${PWD##*/}
        else
                local ASSDIR=$1
        fi
        echo $ASSDIR
        wisdom-dev-update ${PWD##*/}
        ~/applications/maven/bin/mvn io.lambdacube.maven:watch-maven-plugin:1.2:watch -DrefreshURL='http://localhost:9100/osgi/refresh/?b=' -DdestDirectory="${ASSDIR}"
}

Pour continuer à bénéficier des modifications, je ne veux pas surcharger la fonction. Je vais donc seulement la modifier. Je met donc la commande suivante qui va rechercher la ligne correspondant à maven et qui va ajouter à la fin l’option -DskipTests.

eval $(declare -f mvnwatch | sed '/maven:/ s/$/ -DskipTests/' | sed 's/$/;/')