Wenn sich die Binärdatei in /usr/bin/binary
befindet und das Skript ruft die Binärdatei auf, ohne den vollständigen Pfad anzugeben, sondern verlässt sich stattdessen auf /usr/bin
in PATH
sein dann können Sie einfach den Speicherort der neuen Binärdatei an den Anfang der PATH
des Benutzers hinzufügen . Fügen Sie so etwas in deren ~/.bashrc
ein :
PATH=/mount/new_version:$PATH
Aus Sicherheitsgründen geben Skripte oft den vollständigen Pfad zu Binärdateien an, um so etwas zu verhindern.
Wenn Sie Zugriff auf die Binärdatei haben, können Sie sie sichern und einen symbolischen Link erstellen.
mv /urs/bin/binary /urs/bin/binary.bkp
ln -s /mount/new_version/binary /urs/bin/binary
[BEARBEITEN]
Tut mir leid, ich habe nicht gesehen, dass die Änderung nur für einen Benutzer vorgenommen werden muss.
Sie können eine Funktion erstellen, die anstelle der Binärdatei aufgerufen wird.
Je nachdem, wie Sie die Binärdatei ausführen (vollständiger Pfad oder nur Name), müssen Sie eine passende Funktion erstellen , wie:
# 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
Wenn die Binärdatei keine Argumente akzeptiert/benötigt, entfernen Sie "[email protected]" .
Um die Funktionserstellung zu automatisieren, fügen Sie die Funktionszeilen in die .profile-Datei im Home-Verzeichnis des Benutzers ein.
alias commandname=/mount/new_version/binary
in der .bashrc oben wird die Pfadangabe/exportor im Profil ganz einfach ausgeführt.