4 ms·
A pattern I typically do foo && \ bar && \ baz && \ : or so, which is less verbose but short and sweet. Obviously slightly different, but : (n
by yjftsjthsd-h 2y ago
A pattern I typically do
foo && \
bar && \
baz && \
:
or so, which is less verbose but short and sweet. Obviously slightly different, but : (no-op) seems applicable to your situation.
- ramses0 2y agoClever! ...almost TOO clever... ;-) That's a great technique, but the `:` as no-op is tough to expect bash-normies to understand (and a tough "operator" to search for). Thanks for sharing, it'll definitely stay in my back pocket!
- js2 2y agoYou don't need the backslashes in that case. As with lines ending in pipes and a few other places, the line continuation is implicit after the &&: https://unix.stackexchange.com/questions/253518/where-are-bash-line-continuations-after-and-documented https://unix.stackexchange.com/questions/253518/where-are-ba...
- yjftsjthsd-h 2y agoHuh, neat. So I picked that habit up from writing Dockerfiles, which does let you do RUN foo && \ bar && \ : but not RUN foo && bar && : (I just tested it), but more recently you can just write RUN <<EOF foo bar EOF so with the caveat of needing to `set -e` the whole thing might be a moot point now:)