Ho creato il seguente script bash in OS X 10.7.5:
$ cd ~/Documents/github/scripts
$ vim hello_world.sh
#!/bin/bash
clear
echo "The script starts now."
echo "Hi, $USER!"
echo "I will now fetch you a list of connected users:"
echo
w
echo
echo "I'm setting two variables now."
COLOUR="black"
VALUE="9"
echo "This is a string: $COLOUR"
echo "AND this is a number: $VALUE"
echo
echo "I'm giving you back your prompt now."
echo
Quindi mi assicuro che sia eseguibile:
$ chmod ugo+rwx hello_world.sh
$ ls -l
-rwxrwxrwx 1 GuardDog_02 staff 325 Mar 13 18:51 hello_world.sh
Quindi aggiungo la directory al contenuto della variabile PATH:
$ vim ~/.profile
export PATH=/Users/GuardDog_02/QtSDK/Desktop/Qt/474/gcc/bin/:/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/X11/bin:/usr/local/mysql/bin
PATH=$PATH:/Users/GuardDog_02/Documents/github/scripts
export PATH
Quindi eseguo quanto segue per applicare l'effetto:
$ . ~/.profile
Quindi apro una nuova finestra di controllo, ed eseguo hello_world.sh, ma comando non trovato:
$ hello_world.sh
-bash: hello_world.sh: command not found
Perché lo shell shell non è riconosciuto dalla shell bash interattiva nel terminale di controllo? Ho provato la stessa cosa in Ubuntu e ha funzionato bene.