-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Closed
Description
For bugs
- Rule Id (if any, e.g. SC1000): SC2166?
- My shellcheck version (
shellcheck --versionor 'online'): online - I tried on shellcheck.net and verified that this is still a problem on the latest commit
- It's not reproducible on shellcheck.net, but I think that's because it's an OS, configuration or encoding issue
For new checks and feature suggestions
- shellcheck.net (i.e. the latest commit) currently gives no useful warnings about this
- I searched through https://github.com/koalaman/shellcheck/issues and didn't find anything related
Here's a snippet or screenshot that shows the problem:
#!/bin/bash
# or
#!/bin/ksh
[ ! -a /bin/sh ]
echo $?Here's what shellcheck currently says:
nothing
Here's what I wanted or expected to see:
A warning is issued against [ ! -a p ] since it is not well-defined.
Actually, bash 5.2.37 and ksh 2020.0.0 give different results: 0 and 1, respectively. It seems that bash performs
[ ! ] && [ /bin/sh ]
# or
[ -n '!' ] && [ -n /bin/sh ]whereas ksh does
! [ -a /bin/sh ]
# or
! [ -e /bin/sh ]Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels