Comment by yjftsjthsd-h

Comment by yjftsjthsd-h 2 days ago

3 replies

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.
js2 2 days ago

You 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-ba...

  • yjftsjthsd-h a day ago

    Huh, 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:)
ramses0 2 days ago

Clever! ...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!