123456789101112131415161718192021222324252627282930313233343536373839404142 |
- unset a b
- #
- readonly a=A
- b=B
- readonly b
- # readonly on already readonly var is harmless:
- readonly b a
- readonly | grep '^readonly [ab]='
- # this should work:
- export a b
- export -n a b
- echo Ok:$?
- env | grep -e^a= -e^b= # shows nothing
- echo
- # these should all fail (despite the same value being assigned)
- # bash does not abort even in non-interactive more (in script)
- true; a=A
- echo Fail:$?
- true; readonly a=A
- echo Fail:$?
- echo
- # in bash, assignment in export fails, but export succeeds! :)
- # we don't mimic that!
- true; export a=Z
- echo Fail:$?
- #env | grep '^a='
- #echo "^^^a is exported"
- export -n a # undo that bashism, if it happens
- echo
- export b
- # this fails to both set and export a:
- a=Z env | grep '^[ab]='
- echo "^^^a is not exported"
- # but external command does get executed, and $? is not mangled (stays 42):
- (exit 42); a=Z env echo Visible:$?
- echo
- true; unset a
- echo Fail:$?
|