I try to do the script:
#!/bin/bash
IP='192.168.1.1'
fping -c1 -t300 $IP 2>/dev/null 1>/dev/null
if [ "$?" = 0 ]
then
echo "Host found"
else
echo "Host not found"
fi
and i turn it:
pi@raspberrypi ~ $ sh /home/pi/sh/test.sh
/home/pi/sh/test.sh: 9: /home/pi/sh/test.sh: Syntax error: "fi" unexpected (expecting "then")
where is the problem?
If you are editing the script file with Notepad++ on windows you can convert the EOL from the program menu with
Edit => EOL Conversion => Unix (LF)
You can try
$ dos2unix /home/pi/sh/test.sh
and run it again.
Most probably this is because carriage-return \r
in your script. Try run this command to clean-up your script. Just run once. Original file will be backed up.
perl -pi.bak -e 's/\r$//' /home/pi/sh/test.sh
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