I was trying to build a script that runs when wifi is connected or disconnected. After a lot of searches, I got wpa_cli -a command to work with my script.


case "$1" in
        case "$2" in
                echo WIFI is CONNECTED "$WPA_ID"  > output
                #sudo python ./do.py
                echo WIFI is Disconnected "$WPA_ID" > output
                >&2 echo empty or undefined event for wlan0: ""
                exit 1

I was tested the script by running the command sudo wpa_cli -a /home/pi/test.sh. I disconnected the wifi and checked the output file and it contains " WIFI disconnected message". Similar checking is done by connecting to a wifi and we observed "WIFI connected" message.

But when i tried to run the command wpa_cli in daemon mode, It don't work. I have used the command sudo wpa_cli -a /home/pi/test.sh -B. But this time output file have no change if i connected or disconnected the wifi.

But when i ps aux|grep test.sh, it shows the script is running.


1 Answer 1


I have got the answer. When I run in daemon mode using sudo wpa_cli -a /home/pi/test.sh -B, I was checking the wrong output file( In the home directory ). In the echo, I have not mentioned the correct path for file output, So it will be redirected to the file output in the root / directory.

Thanks for all

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .