Мне нужна помощь специалиста. С 00:00 до 6:00 у меня безлимитный Wi-Fi, именно тогда я начинаю загрузку. Обычно я загружаю фильмы с торрентов и файлов ISO, которые тестирую в это время. У меня вопрос: как остановить Wi-Fi в 6 утра, чтобы он отключил все? Потому что есть файлы, которые занимают до 20 ГБ, и они не заканчиваются за одну ночь, и мне приходится останавливать их на 6. Что мне делать в таком случае? Следует ли мне писать программу на Python или что-то изменить в настройках?
Мне действительно нужна помощь в этом, если кто-то знает программу, которую я могу загрузить, которая делает всю работу за меня, пожалуйста, скажите мне. Между прочим, я не могу войти в свой маршрутизатор tplink с веб-страницы, поэтому я должен попытаться найти приложение, спасибо.
Вот простая программа Python, которая включает Wi-Fi в 00:00, а затем выключает в 06:00:
import os
import time
from datetime import datetime
import sys
while(1):
now = datetime.now()
if now.hour == 0:
print("Starting Wifi...\n")
os.system("nmcli radio wifi on")
if now.hour == 6:
print("Turning Wifi off...\n")
os.system("nmcli radio wifi off")
sys.exit()
time.sleep(60)
Просто сохраните это как .py
файл, а затем добавьте его в службы запуска в вашей системе Linux, чтобы он запускался в фоновом режиме при запуске компьютера и продолжал работать. Сценарий автоматически завершает работу после выключения Wi-Fi в 06:00 ± 1 мин.
ПРИМЕЧАНИЕ. Сценарий проверяет текущий час каждые 1 мин, поэтому фактическое время, когда соединение Wi-Fi отключено или перезапущено, может быть задержано на 1 мин, если вы хотите, чтобы он проверял быстрее, вы можете изменить time.sleep (60)
на, скажем, time.sleep (30)
, чтобы он проверял время каждые 30 секунд .
ОБНОВЛЕНИЕ: (Чтобы выключить в 05:50), используйте следующее: вы можете настроить час и секунды по своему вкусу в строке , если now.hour == 5 и now.minute> = 50:
код ниже:
import os
import time
from datetime import datetime
import sys
while(1):
now = datetime.now()
if now.hour == 0:
print("Starting Wifi...\n")
os.system("nmcli radio wifi on")
if now.hour == 5 and now.minute >= 50:
print("Turning Wifi off...\n")
os.system("nmcli radio wifi off")
sys.exit()
time.sleep(60)
Добавление сценария в приложения STartup
which
в терминале, для Python2 используйте: which python2
, для python3 используйте который python3
. Скопируйте местоположение питона.
/ usr / local / bin / python3
с программой python в /Desktop/wifi.py
, я использую следующее в команде : / usr / local / bin / python3 /Desktop/wifi.py
ОБНОВЛЕНИЕ: программа, отображающая сообщения только один раз. Добавленная функция: если Wi-Fi случайно отключается в то время, когда программа ожидает его включения, программа автоматически перезапускает Wi-Fi. Таким образом, программа также будет проверять интернет-соединение и предотвращать отключение Wi-Fi между включением и выключением.
import os
import time
from datetime import datetime
import sys
import urllib.request
def connect(host='http://google.com'):
try:
urllib.request.urlopen(host) #Python 3.x
return 1
except:
return 0
preWifi = 0
while(1):
now = datetime.now()
wifi = connect()
if wifi == 1 and wifi != preWifi:
print('Wifi On.')
if now.hour == 0 and wifi != 1:
print("Starting Wifi...\t | Time", now, "\n")
os.system("nmcli radio wifi on")
print("Reconnecting...please stand by.\t | Time =", now, "\n")
while(not connect()):
time.sleep(0.5)
if now.hour == 5 and now.minute == 50 and wifi == 1:
print("Turning Wifi off...\t | Time", now, "\n")
os.system("nmcli radio wifi off")
sys.exit()
preWifi = wifi
time.sleep(1)
Надеюсь, это сработает отлично! : D
Чтобы полностью отключить сообщения, просто сохраните программу с расширением
.pyw
вместо.py
.
Самый простой способ - использовать задание cron.
Во-первых, укажите имя вашего беспроводного устройства с помощью ls / sys / class / net
. Вы увидите что-то вроде:
eth0 lo wlp3s0`
Затем введите crontab -e
, чтобы открыть crontab, и добавьте эту строку:
59 05 * * * ifdown wlp3s0
Это отключит Wi-Fi в 5:59 утра.