From 4afc228108e6d8155175e728cfed961017ae7b25 Mon Sep 17 00:00:00 2001 From: Vincent Bernat Date: Tue, 18 Aug 2020 17:31:28 +0200 Subject: [PATCH] hacking: replace use of "which" with "command -v" (#71278) "command -v" is the POSIX compliant way to get the path to a command. It returns the path to the command if it exists and exits with a non-zero status when it does not, without any output. "which" is not POSIX and it can have various different effects. With Zsh, it says "python not found" on stdout. See: - https://pubs.opengroup.org/onlinepubs/009695399/utilities/command.html Signed-off-by: Vincent Bernat --- hacking/env-setup | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hacking/env-setup b/hacking/env-setup index 46f58fecda5..fc0648751a0 100644 --- a/hacking/env-setup +++ b/hacking/env-setup @@ -1,3 +1,4 @@ + # usage: source hacking/env-setup [-q] # modifies environment for running Ansible from checkout @@ -21,7 +22,7 @@ prepend_path() PYTHONPATH=${PYTHONPATH-""} PATH=${PATH-""} MANPATH=${MANPATH-$(manpath)} -PYTHON=$(which python 2>/dev/null || which python3 2>/dev/null) +PYTHON=$(command -v python || command -v python3) PYTHON_BIN=${PYTHON_BIN-$PYTHON} verbosity=${1-info} # Defaults to `info' if unspecified