I don't know why I get error while running this simple script:
#!/bin/bash read -p "Please enter directory name: " DIR read -p "Please enter the path: " PATH mkdir -p "$PATH/$DIR"
line 7: mkdir: command not found
Don't use the variable PATH
. This variable contains a list of directories to search for executable programs. Since you're replacing it, the script can no longer find the mkdir
program.
In general, avoid using variables that are all uppercase, these are often used as parameters for the shell or other programs.
The variable PATH
is an important environment variable - it is the way that programs (like mkdir
) are found, and you are overwriting it. You shouldn't do that, but if you must then:
/bin/mkdir -p "$PATH/$DIR"
but honestly DON'T USE UPPERCASE! There are loads of reserved or special variables in Bash, and if you can't remember them all then just remember that all except one is in UPPERCASE. Variables in Bash are case-sensitive, like in all sensible programming languages.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With