Skip to content

Commit 994cb83

Browse files
committed
simplify v-run-cli-cmd: don't rely on hardcoded paths which may differ between distros
1 parent 7637ad3 commit 994cb83

File tree

1 file changed

+26
-28
lines changed

1 file changed

+26
-28
lines changed

bin/v-run-cli-cmd

Lines changed: 26 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -25,38 +25,36 @@ if [ -z $homedir ]; then
2525
fi
2626

2727
if [ "$clicmd" = "composer" ]; then
28-
realcmd="$homedir/.composer/composer"
29-
else
30-
realcmd="$(which "$clicmd")"
31-
check_result $? "Unknown cli command" $E_NOTEXIST
28+
clicmd="$homedir/.composer/composer"
3229
fi
3330

34-
if [ ! -x "$realcmd" ]; then
31+
if [ -z "$(which "$clicmd")" ]; then
3532
check_result $E_NOTEXIST "Error: Cli command does not exist"
3633
fi
34+
basecmd="$(basename "$clicmd")"
3735

38-
if [ "$realcmd" != '/bin/ps' -a \
39-
"$realcmd" != '/bin/ls' -a \
40-
"$realcmd" != '/bin/tar' -a \
41-
"$realcmd" != '/bin/zip' -a \
42-
"$realcmd" != '/usr/bin/unzip' -a \
43-
"$realcmd" != '/bin/gzip' -a \
44-
"$realcmd" != '/bin/gunzip' -a \
45-
"$realcmd" != '/bin/mkdir' -a \
46-
"$realcmd" != '/usr/bin/find' -a \
47-
"$realcmd" != '/usr/bin/id' -a \
48-
"$realcmd" != '/bin/grep' -a \
49-
"$realcmd" != '/bin/egrep' -a \
50-
"$realcmd" != '/bin/sed' -a \
51-
"$realcmd" != '/bin/cat' -a \
52-
"$realcmd" != '/usr/bin/php5.6' -a \
53-
"$realcmd" != '/usr/bin/php7.0' -a \
54-
"$realcmd" != '/usr/bin/php7.1' -a \
55-
"$realcmd" != '/usr/bin/php7.2' -a \
56-
"$realcmd" != '/usr/bin/php7.3' -a \
57-
"$realcmd" != '/usr/bin/php7.4' -a \
58-
"$realcmd" != '/usr/bin/php' -a \
59-
"$clicmd" != 'composer' ]; then
36+
if [ "$basecmd" != 'ps' -a \
37+
"$basecmd" != 'ls' -a \
38+
"$basecmd" != 'tar' -a \
39+
"$basecmd" != 'zip' -a \
40+
"$basecmd" != 'unzip' -a \
41+
"$basecmd" != 'gzip' -a \
42+
"$basecmd" != 'gunzip' -a \
43+
"$basecmd" != 'mkdir' -a \
44+
"$basecmd" != 'find' -a \
45+
"$basecmd" != 'id' -a \
46+
"$basecmd" != 'grep' -a \
47+
"$basecmd" != 'egrep' -a \
48+
"$basecmd" != 'sed' -a \
49+
"$basecmd" != 'cat' -a \
50+
"$basecmd" != 'php5.6' -a \
51+
"$basecmd" != 'php7.0' -a \
52+
"$basecmd" != 'php7.1' -a \
53+
"$basecmd" != 'php7.2' -a \
54+
"$basecmd" != 'php7.3' -a \
55+
"$basecmd" != 'php7.4' -a \
56+
"$basecmd" != 'php' -a \
57+
"$basecmd" != 'composer' ]; then
6058
check_result $E_FORBIDEN "Error: Cli command not enabled"
6159
fi
6260

@@ -65,7 +63,7 @@ for ((I=3; I <= $# ; I++)); do
6563
cmdArgs="$cmdArgs ${all_scriptargs[${I}-1]}"
6664
done
6765

68-
runuser -u "$user" -- $realcmd $cmdArgs
66+
runuser -u "$user" -- $clicmd $cmdArgs
6967
if [ $? -ne 0 ]; then
7068
echo "Error: cmd exited with errors"
7169
exit 3

0 commit comments

Comments
 (0)