Si le binaire est en /usr/bin/binary
et le script invoque le binaire sans spécifier le chemin complet, mais s'appuie à la place sur /usr/bin
être en PATH
alors vous pouvez simplement ajouter l'emplacement du nouveau binaire au début du PATH
de l'utilisateur . Mettez quelque chose comme ça dans leur ~/.bashrc
:
PATH=/mount/new_version:$PATH
Pour des raisons de sécurité, les scripts spécifient souvent le chemin complet vers les fichiers binaires pour empêcher ce genre de chose.
Si vous avez accès au binaire, vous pouvez le sauvegarder et créer un lien symbolique.
mv /urs/bin/binary /urs/bin/binary.bkp
ln -s /mount/new_version/binary /urs/bin/binary
[MODIFIER]
Désolé, je n'ai pas vu que la modification doit être effectuée pour un seul utilisateur.
Vous pouvez créer une fonction à appeler à la place du binaire.
Selon la façon dont vous exécutez le binaire (chemin complet ou juste le nom), vous devez créer une fonction appropriée , comme :
# Full path
function /urs/bin/binary () { command /mount/new_version/binary "[email protected]"; }
export -f /urs/bin/binary
# Name
function binary () { command /mount/new_version/binary "[email protected]"; }
export -f binary
Si le binaire n'accepte pas/n'a pas besoin d'arguments, supprimez le "[email protected]" .
Pour automatiser la création de fonction, placez les lignes de fonction dans le fichier .profile dans le répertoire d'accueil de l'utilisateur.
alias commandname=/mount/new_version/binary
dans le .bashrc au-dessus de la déclaration de chemin/exportateur dans le profil accomplira assez facilement.