hush: add support for "set -o pipefail"
function old new delta checkjobs 467 517 +50 builtin_set 259 286 +27 o_opt_strings - 10 +10 hush_main 1011 1013 +2 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 3/0 up/down: 89/0) Total: 89 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
40
shell/hush_test/hush-misc/pipefail.right
Normal file
40
shell/hush_test/hush-misc/pipefail.right
Normal file
@@ -0,0 +1,40 @@
|
||||
Default:
|
||||
true | true:
|
||||
0
|
||||
1
|
||||
true | false:
|
||||
1
|
||||
0
|
||||
false | true:
|
||||
0
|
||||
1
|
||||
exit 2 | exit 3 | exit 4:
|
||||
4
|
||||
0
|
||||
Pipefail on:
|
||||
true | true:
|
||||
0
|
||||
1
|
||||
true | false:
|
||||
1
|
||||
0
|
||||
false | true:
|
||||
1
|
||||
0
|
||||
exit 2 | exit 3 | exit 4:
|
||||
4
|
||||
0
|
||||
Pipefail off:
|
||||
true | true:
|
||||
0
|
||||
1
|
||||
true | false:
|
||||
1
|
||||
0
|
||||
false | true:
|
||||
0
|
||||
1
|
||||
exit 2 | exit 3 | exit 4:
|
||||
4
|
||||
0
|
||||
Done
|
45
shell/hush_test/hush-misc/pipefail.tests
Executable file
45
shell/hush_test/hush-misc/pipefail.tests
Executable file
@@ -0,0 +1,45 @@
|
||||
echo Default:
|
||||
echo "true | true:"
|
||||
true | true; echo $?
|
||||
! true | true; echo $?
|
||||
echo "true | false:"
|
||||
true | false; echo $?
|
||||
! true | false; echo $?
|
||||
echo "false | true:"
|
||||
false | true; echo $?
|
||||
! false | true; echo $?
|
||||
echo "exit 2 | exit 3 | exit 4:"
|
||||
exit 2 | exit 3 | exit 4; echo $?
|
||||
! exit 2 | exit 3 | exit 4; echo $?
|
||||
|
||||
echo Pipefail on:
|
||||
set -o pipefail
|
||||
echo "true | true:"
|
||||
true | true; echo $?
|
||||
! true | true; echo $?
|
||||
echo "true | false:"
|
||||
true | false; echo $?
|
||||
! true | false; echo $?
|
||||
echo "false | true:"
|
||||
false | true; echo $?
|
||||
! false | true; echo $?
|
||||
echo "exit 2 | exit 3 | exit 4:"
|
||||
exit 2 | exit 3 | exit 4; echo $?
|
||||
! exit 2 | exit 3 | exit 4; echo $?
|
||||
|
||||
echo Pipefail off:
|
||||
set +o pipefail
|
||||
echo "true | true:"
|
||||
true | true; echo $?
|
||||
! true | true; echo $?
|
||||
echo "true | false:"
|
||||
true | false; echo $?
|
||||
! true | false; echo $?
|
||||
echo "false | true:"
|
||||
false | true; echo $?
|
||||
! false | true; echo $?
|
||||
echo "exit 2 | exit 3 | exit 4:"
|
||||
exit 2 | exit 3 | exit 4; echo $?
|
||||
! exit 2 | exit 3 | exit 4; echo $?
|
||||
|
||||
echo Done
|
Reference in New Issue
Block a user