mirror of
https://https.git.savannah.gnu.org/git/bash.git
synced 2026-08-09 11:40:30 +02:00
bash-5.0 distribution sources and documentation
This commit is contained in:
@@ -0,0 +1,77 @@
|
||||
# specvar -- test some of the dynamic variables
|
||||
|
||||
# BASHPID
|
||||
pid=$$
|
||||
bpid=$BASHPID
|
||||
subpid=$( (echo $BASHPID) )
|
||||
|
||||
if [ "$bpid" -ne "$subpid" ]; then echo BASHPID ok; fi
|
||||
|
||||
# BASH_ARGV0
|
||||
|
||||
BASH_ARGV0=hello
|
||||
case $0 in
|
||||
hello) echo BASH_ARGV0 ok ;;
|
||||
*) echo "BASH_ARGV0 mismatch: $BASH_ARGV0 ($0)" >&2 ;;
|
||||
esac
|
||||
|
||||
setarg0()
|
||||
{
|
||||
BASH_ARGV0="$1"
|
||||
}
|
||||
|
||||
setarg0 arg0
|
||||
case $0 in
|
||||
arg0) echo BASH_ARGV0 ok ;;
|
||||
*) echo "BASH_ARGV0 mismatch: $BASH_ARGV0 ($0)" >&2 ;;
|
||||
esac
|
||||
|
||||
# SECONDS
|
||||
before=$SECONDS
|
||||
sleep 2
|
||||
after=$SECONDS
|
||||
|
||||
if (( $after > $before )); then echo SECONDS ok; fi
|
||||
unset before after
|
||||
|
||||
# EPOCHSECONDS
|
||||
|
||||
# not exact, but should work
|
||||
|
||||
now1=$(perl -e 'print time')
|
||||
now2=$EPOCHSECONDS
|
||||
|
||||
case $now1 in
|
||||
$now2) echo EPOCHSECONDS ok ;;
|
||||
*) echo "current time via perl and EPOCHSECONDS possible mismatch|$now1|$now2" >&2 ;;
|
||||
esac
|
||||
unset now1 now2
|
||||
|
||||
LC_ALL=C # force decimal point to `.'
|
||||
now1=$EPOCHREALTIME
|
||||
now2=$EPOCHREALTIME
|
||||
sec1=${now1%%.*}
|
||||
sec2=${now2%%.*}
|
||||
|
||||
msec1=${now1##*.}
|
||||
msec2=${now2##*.}
|
||||
# cut off leading zeros
|
||||
shopt -s extglob
|
||||
msec1=${msec1##*(0)}
|
||||
msec2=${msec2##*(0)}
|
||||
|
||||
dsec=$(( $sec2 - $sec1 ))
|
||||
dmsec=$(( $msec2 - $msec1 ))
|
||||
if (( $dmsec < 0 )); then
|
||||
dmsec=$(( dmsec + 1000000 ))
|
||||
dsec=$(( desc - 1 ))
|
||||
fi
|
||||
|
||||
# not a real test, but ok for a start
|
||||
if (( $dmsec < 1000000 )); then echo EPOCHREALTIME ok; fi
|
||||
|
||||
${THIS_SH} -c 'echo $BASH_COMMAND'
|
||||
|
||||
# FUNCNAME tested in func.tests
|
||||
# RANDOM tested in varenv.sh
|
||||
# LINENO tested in dbg-support
|
||||
Reference in New Issue
Block a user