I want to execute graldew. It is definitely in the same directory and it has all the permission. But when I try to execute it I get command not found. Also I can not even autocomplete it using TAB button.
- 228
2 Answers
It is definitely in the same directory
Unlike Windows, the command-line shell in macOS (and other Unix-like systems) only executes commands found in $PATH and doesn't give any special treatment to "the same directory" – and the current directory is not in $PATH by default.
Files whose location isn't in $PATH can only be run using their exact path: ./gradlew will work for files in the current directory (i.e. .), though full /Users/..../android/gradlew or $PWD/gradlew can be used too.
It is also possible to add . at the end of $PATH, though generally not recommended. (Adding it at the beginning, like in Windows, is very risky as downloaded files could override system commands such as 'ls' or 'rm'; having it at the end – a bit less so.)
- 452,512
Have you tried ./graldew?
./ represents the current directory
- 1,897
- 26
-
1Didn't explain why this is happening, though... – u1686_grawity Jan 16 '22 at 09:28
-
Your answer could be improved with additional supporting information. Please [edit] to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center. – Community Jan 16 '22 at 09:29
-
https://superuser.com/questions/156582/why-is-not-in-the-path-by-default – harrymc Jan 16 '22 at 10:49
