News for hackers. Stuff that matters.
Re:Elegant Bash Conditionals by mr-wendel on Tuesday March 02, 2021 @02:30PM (#26319367)
You can group with curley braces too. This can be especially useful for input/output redirection over a chunk of commands.

Be careful with using parenthesis -- this means you're now in a subshell! That "exit 1" will NOT terminate the entire script, but instead set "$?" to 1 for the next command. Additionally, any variable or environmental changes will be lost (which may be desirable) once you're outside of that block.

Re:Elegant Bash Conditionals by _joel on Tuesday March 02, 2021 @02:32PM (#26319400)
Thanks for the tip! I knew what I was doing was probably not right, but it worked when I needed it in the past (probably because of setting pipefail). It's very much welcome to know how to do it better :)
Re:Elegant Bash Conditionals by cb321 on Tuesday March 02, 2021 @05:32PM (#26321993)
Curly braces will fail in `dash` which may be what your /bin/sh is (or could become).
Re:Elegant Bash Conditionals by anderskaseorg on Tuesday March 02, 2021 @09:28PM (#26323980)
Curly braces are POSIX and work fine in dash. (Perhaps when testing you forgot these restrictions, which are the same as in bash: there must be whitespace after {, and a newline or semicolon before }.)

https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V...

Re:Elegant Bash Conditionals by cb321 on Wednesday March 03, 2021 @06:13AM (#26326974)
You are right. Apologies. Seemingly from this [1], quoting such braces was initially recommended.

[1] https://www.cs.ait.ac.th/~on/O/oreilly/unix/ksh/appa_02.htm