Nie wiem, czy to jest zła rzecz, ani co to znaczy. Mój skrypt nadal działa poprawnie, ale czy powinienem to naprawić?
#!/bin/sh
#This script will send text and maybe images to other computers via ssh and scp.
#Configuration files in same folder
source /Users/jacobgarby/Desktop/messaging/messages.cfg
TIME=$(date +"%H:%M:%S")
CONNECTED[0]="mainmini@192.168.1.65"
if [ -d messages.log ]; then
:
else
touch messages.log
fi
read MSG
if [ "$MSG" == "!help" ]; then
echo ; echo "!clear Clear's your personal chat log."
echo "!ban [usrname] Prevents a user from entering this chat IN DEV."
else
echo "$TIME | $USER | $MSG" >> messages.log; echo >> messages.log; echo >> messages.log
tail messages.log
fi
for CONNECTION in CONNECTED; do
echo "It works"
done
if [ "alerttype" == "notification"]; then
osascript -e 'display notification "You have recieved a message!" with title "Message"'
else
osascript -e 'display dialog "You have recieved a message!" with title "Message"'
fi
alerttype
nigdy nie będzie taki sam jak łańcuch notification
. Być może masz na myśli [ "$alerttype" = "notification" ]
?
=
, nie ==
- patrz specyfikacja POSIX pod adresem pubs.opengroup.org/onlinepubs/9699919799/utilities/test.html i zobaczysz, że obsługiwana składnia porównania łańcuchów to s1 = s2
; ==
jest rozszerzeniem bash i nie wszystkie systemy operacyjne i powłoki będą go obsługiwać; jeśli chcesz użyć operatora porównania o rozszerzonym bashu zamiast standardowego operatora POSIX, [[ ]]
, nie [ ]
).