Discussion forum for all Windows batch related topics.
Moderator: DosItHelp
-
J4ck01
- Posts: 1
- Joined: 11 Aug 2018 06:02
#1
Post
by J4ck01 » 11 Aug 2018 06:05
So im trying to write a little script. It should play a sound if my Phone joins my Network.
Code: Select all
@echo off
:A
ping -n 1 xxx.xxx.xxx.xx | findstr TTL && start airsiren.wav
goto A
The Problem is now that if the Phone got detected. It will repeatedly start the Sound. But if done correctly it should only play the sound once and then go back to searching for that Phone. Does anyone know a simple fix? Maybe with an IF conditional?
I haven't been doing much with Batch but i think i got some basic knowledge.
Thanks for your help
-
penpen
- Expert
- Posts: 2009
- Joined: 23 Jun 2013 06:15
- Location: Germany
#2
Post
by penpen » 12 Aug 2018 06:56
It should help if you add an "goto :eof" after you have executed playing your sound to avoid the next instruction ("goto A", that results in the endless loop):
Code: Select all
@echo off
:A
echo loop
ping -n 1 xxx.xxx.xxx.xx | findstr TTL && (
start airsiren.wav
goto :eof
)
goto A
Alternatively you could also only jump if needed:
Code: Select all
@echo off
:A
echo loop
ping -n 1 xxx.xxx.xxx.xx | findstr TTL && start airsiren.wav || goto :A
penpen