[ 1 ], use
true.while [ 1 ]
do
echo "infinite loop"
donewhile true
do
echo "infinite loop"
doneThis is a stylistic suggestion to use true instead of
[ 1 ].
[ 1 ] seems to suggest that the value "1" is somehow
relevant to the statement. This is not the case: it doesn't matter. You
can replace it with [ 0 ] or [ wombat ], and
it will still always be true.
If you instead use true, the value is actually
considered and can be inverted by replacing with false.
On bash, you can also use (( 1 )), which evaluates to
true much like in C. (( 0 )) is similarly false.
None.
ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.