File: exec10.sub

package info (click to toggle)
bash 4.4-5
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 36,372 kB
  • sloc: ansic: 103,485; sh: 7,655; yacc: 5,214; makefile: 4,357; perl: 4,227; asm: 48; awk: 23; sed: 16
file content (34 lines) | stat: -rw-r--r-- 1,285 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# post bash-4.3 changes to how command -p works (avoid modifying $PATH)

: ${TMPDIR=/tmp}
xpath=/usr/local/bin:/usr/GNU/bin:/usr/bin:/bin:.

# set a value of PATH we can test for; versions of bash up to and including
# bash-4.3 would set $PATH while running command -p
PATH=$xpath
export PATH
command -p sh -c 'echo $PATH'

PATH=${TMPDIR}
command -pv cat	>/dev/null || echo "cannot find cat using standard path"
command -p cat < /dev/null
#hash

PATH=$xpath
command -pv cat >/dev/null || echo "cannot find cat using xpath"
PATH=$TMPDIR command -pv cat >/dev/null || echo "cannot find cat using standard path with PATH=\$TMPDIR"
PATH= command -pv cat >/dev/null || echo "cannot find cat using standard path with empty \$PATH"
PATH=$TMPDIR command -v cat >/dev/null || echo "cannot find cat in \$TMPDIR"
PATH= command -v cat >/dev/null || echo "cannot find cat with empty \$PATH"

echo PATH = $PATH
hash cat

PATH=$xpath

PATH=$TMPDIR command -pv cat >/dev/null || echo "cannot find cat using stdpath with hash"
PATH= command -pv cat >/dev/null || echo "cannot find cat using stdpath with hash"
PATH=$TMPDIR command -v cat >/dev/null || echo "cannot find cat in \$TMPDIR with hash"
PATH= command -v cat >/dev/null || echo "cannot find cat with empty \$PATH with hash"

echo PATH = $PATH