繁体   English   中英

Raspberry Pi(Raspbian Linux风格)在wifi上运行脚本

[英]Raspberry Pi (Raspbian Linux flavor) run script on wifi up

目前,我在wifi适配器连接到网络后遇到脚本自动运行的问题。

经过可笑的扩展研究之后,我做了几次尝试将脚本添加到/etc/network/if-up.d/。 手动执行我的脚本; 但是它不会自动。

用户权限:

 ls -al /etc/network/if-up.d/*
 -rwxr-xr-x 1 root root  703 Jul 25  2011 /etc/network/if-up.d/000resolvconf
 -rwxr-xr-x 1 root root  484 Apr 13  2015 /etc/network/if-up.d/avahi-daemon
 -rwxr-xr-x 1 root root 4958 Apr  6  2015 /etc/network/if-up.d/mountnfs
 -rwxr-xr-x 1 root root  945 Apr 14  2016 /etc/network/if-up.d/openssh-server
 -rwxr-xr-x 1 root root   48 Apr 26 03:21 /etc/network/if-up.d/sendemail
 -rwxr-xr-x 1 root root 1483 Jan  6  2013 /etc/network/if-up.d/upstart
 lrwxrwxrwx 1 root root   32 Sep 17  2016 /etc/network/if-up.d/wpasupplicant -> ../../wpa_supplicant/ifupdown.sh

另外,我尝试通过添加一行直接在/ etc / network / interfaces中推送命令

post-up /home/pi/r/sendemail.sh

sendemail.sh的内容:

#!/bin/sh
python /home/pi/r/pip.py

重新启动后,实际上没有任何反应。 我什至在前面尝试过sudo

我假设wpasupplicant是导致此问题的原因,但是我无法在/ etc / wpa_supplicant下的ifupdown.sh脚本中获得如何运行脚本的方法。

感谢您的帮助!

如果在初始化wifi接口之前没有连接,我建议添加一个bash或python脚本的cron作业,每隔X分钟检查一次连接。

平(主机);

如果主机启动,则运行python命令或外部命令。

这是相当模棱两可的,但希望能有所帮助。

这是一个脚本示例,它将检查主机是否还处于活动状态。

import re,commands


class CheckAlive:
def __init__(self):
        myCommand = commands.getstatusoutput('ping ' + 'google.com)
        searchString = r'ping: unknown host'

        match = re.search(searchString,str(myCommand))

        if match:
            # host is not alive
            print 'no alive, don't do stuff';
        else:
            # host is alive
            print 'alive, time do stuff';

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM