LINUX.ORG.RU

История изменений

Исправление LightDiver, (текущая версия) :

То херня, не смотри то позорище. Я уже переделал. Оцени!

import time
import os.path
import subprocess
import shlex
import random
import datetime
from sys import argv

#time.sleep(float(argv[1]))

if os.path.isfile('/tmp/signal1'):
	os.remove('/tmp/signal1')
	exit()
else:
	open('/tmp/signal1', "w").close()

subprocess.call(shlex.split('env DISPLAY=:0 lua /home/diver/Скрипты/lo.lua'))
while True:
	if os.path.isfile('/tmp/signal1'):
		subprocess.call(shlex.split('env DISPLAY=:0 sh /home/diver/Скрипты/l211.sh'))
		print('1')
		print(datetime.datetime.now())
		x = random.randint(112, 216)
		x1 = "0."
		x = str(x)
		x1 = str(x1)
		x = x1 + x
		x = float(x)
		print(x)
		time.sleep(x)
		subprocess.call(shlex.split('env DISPLAY=:0 sh /home/diver/Скрипты/l212.sh'))
		print('2')
		print(datetime.datetime.now())
		x = random.randint(311, 540)
		x = int(x)
		print (x)
		i = 0
		while i < x:
			time.sleep(1)
			if i == x:
				pass
			if not os.path.isfile('/tmp/signal1'):
				break
			i = i+1
	else:
		break

оцени последние строк 10 кода. Это сложный таймер, который позволяет завершить скрипт, даже если таймер длится несколько минут, например. Только надо оформить код нормально теперь. Всю эту лапшу.

В луа нет таймера нормального. Я сначала попробовал ютаймер - он не хотел работать из под крона. Затем я написал свой таймер на питоне - вон он закомментирован в начале кода.

Потом глянул на все это, оценил баги от моих косяков и переписал все с нуля на питоне. Очень уж в нем много возможностей.

А про вызов разных таймеров я уже решил. Я просто использую два таких скрипта как выше. Один основной вон его код. Он срабатывает раз в 5-9 минут. Второй малый и вызывается кроном в определенный час в определенную минуту ровно на минуту и срабатывает раз в 100-200мс.

И все, никаких сложных управлений и айдишниковж. Тем более у меня уже есть скрипт на питоне, который работает с кроном и формирует его. Я просто добавил в него этот скрипт и все.

Исправление LightDiver, :

То херня, не смотри то позорище. Я уже переделал. Оцени!

import time
import os.path
import subprocess
import shlex
import random
import datetime
from sys import argv

#time.sleep(float(argv[1]))

if os.path.isfile('/tmp/signal1'):
	os.remove('/tmp/signal1')
	exit()
else:
	open('/tmp/signal1', "w").close()

subprocess.call(shlex.split('env DISPLAY=:0 lua /home/diver/Скрипты/lo.lua'))
while True:
	if os.path.isfile('/tmp/signal1'):
		subprocess.call(shlex.split('env DISPLAY=:0 sh /home/diver/Скрипты/l211.sh'))
		print('1')
		print(datetime.datetime.now())
		x = random.randint(112, 216)
		x1 = "0."
		x = str(x)
		x1 = str(x1)
		x = x1 + x
		x = float(x)
		print(x)
		time.sleep(x)
		subprocess.call(shlex.split('env DISPLAY=:0 sh /home/diver/Скрипты/l212.sh'))
		print('2')
		print(datetime.datetime.now())
		x = random.randint(311, 540)
		x = int(x)
		print (x)
		i = 0
		while i < x:
			time.sleep(1)
			if i == x:
				pass
			if not os.path.isfile('/tmp/signal1'):
				break
			i = i+1
	else:
		break

оцени последние строк 10 кода. Это сложный таймер, который позволяет завершить скрипт, даже если таймер длится несколько минут, например. Только надо оформить код нормально теперь. Всю эту лапшу.

В луа нет таймера нормального. Я сначала попробовал ютаймер - он не хотел работать из под крона. Затем я написал свой таймер на питоне - вон он закомментирован в начале кода.

Потом глянул на все это, оценил баги от моих косяков и переписал все с нуля на питоне. Очень уж в нем много возможностей.

Исправление LightDiver, :

То херня, не смотри то позорище. Я уже переделал. Оцени!

import time
import os.path
import subprocess
import shlex
import random
import datetime
from sys import argv

#time.sleep(float(argv[1]))

if os.path.isfile('/tmp/signal1'):
	os.remove('/tmp/signal1')
	exit()
else:
	open('/tmp/signal1', "w").close()

subprocess.call(shlex.split('env DISPLAY=:0 lua /home/diver/Скрипты/lo.lua'))
while True:
	if os.path.isfile('/tmp/signal1'):
		subprocess.call(shlex.split('env DISPLAY=:0 sh /home/diver/Скрипты/l211.sh'))
		print('1')
		print(datetime.datetime.now())
		x = random.randint(112, 216)
		x1 = "0."
		x = str(x)
		x1 = str(x1)
		x = x1 + x
		x = float(x)
		print(x)
		time.sleep(x)
		subprocess.call(shlex.split('env DISPLAY=:0 sh /home/diver/Скрипты/l212.sh'))
		print('2')
		print(datetime.datetime.now())
		x = random.randint(311, 540)
		x = int(x)
		print (x)
		i = 0
		while i < x:
			time.sleep(1)
			if i == x:
				pass
			if not os.path.isfile('/tmp/signal1'):
				break
			i = i+1
	else:
		break

оцени последние строк 10 кода. Это сложный таймер, который позволяет завершить скрипт, даже если таймер длится несколько минут, например. Только надо оформить код нормально теперь. Всю эту лапшу.

В луа нет таймера нормального. Я сначала попробовал ютаймер - он не хотел работать из под крона. Затем я написал свой таймер на питоне - вон он закомментирован в начале кода.

Потом глянул на все это, оценил лаги от моих косяков и переписал все с нуля на питоне. Очень уж в нем много возможностей.

Исходная версия LightDiver, :

То херня, не смотри то позорище. Я уже переделал. Оцени!

import time
import os.path
import subprocess
import shlex
import random
import datetime
from sys import argv

#time.sleep(float(argv[1]))

if os.path.isfile('/tmp/signal1'):
	os.remove('/tmp/signal1')
	exit()
else:
	open('/tmp/signal1', "w").close()

subprocess.call(shlex.split('env DISPLAY=:0 lua /home/diver/Скрипты/lo.lua'))
while True:
	if os.path.isfile('/tmp/signal1'):
		subprocess.call(shlex.split('env DISPLAY=:0 sh /home/diver/Скрипты/l211.sh'))
		print('1')
		print(datetime.datetime.now())
		x = random.randint(112, 216)
		x1 = "0."
		x = str(x)
		x1 = str(x1)
		x = x1 + x
		x = float(x)
		print(x)
		time.sleep(x)
		subprocess.call(shlex.split('env DISPLAY=:0 sh /home/diver/Скрипты/l212.sh'))
		print('2')
		print(datetime.datetime.now())
		x = random.randint(311, 540)
		x = int(x)
		print (x)
		i = 0
		while i < x:
			time.sleep(1)
			if i == x:
				pass
			if not os.path.isfile('/tmp/signal1'):
				break
			i = i+1
	else:
		break

оцени последние строк 10 кода. Это сложный таймер, который позволяет завершить скрипт, даже если таймер длится несколько минут, например. Только надо оформить код нормально теперь. Всю эту лапшу.