• mitchty@lemmy.sdf.org
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    3 months ago

    Key here is the outer [] and interaction of $[], test doesn’t have == by default in standard posix, so no this isn’t posix shell or bourne compatible. Tis but another bashism. I could probably force zsh into a more bourne mode to try it but its definitely not portable bourne shell its bash.

    $ [ $[ $RANDOM % 6 ] == 0 ] && echo rm || echo ok
    zsh: = not found
    $ zsh --version
    zsh 5.9 (x86_64-pc-linux-gnu)
    

    == should be -eq for this to be posix/bourne portable, you could use = but -eq is for numeric comparisons so not quite right.