パソコンを自動起動させたところ
スクリプトの立ち上がりがあまりにも早く
デスクトップの環境が揃うまでにスクリプトが終わってしまう
ことに気づきました
#!/usr/bin/python3.7
# -*- coding: utf-8 -*-
import datetime
import time
import sys, select
import subprocess as sp
print("しばらくおまちください")
#立ち上がりのウエイト設定
time.sleep(5)
#今日を取得
today = datetime.date.today()
print(today)
print("実行日を更新しますか?(y or notuch is run): ")
#インプット選択10秒間キー入力がなければマイナス一日
i, o, e = select.select( [sys.stdin], [], [], 10 )
if (i):
print("input", sys.stdin.readline().strip())
a = "y"
else:
print("notuch key")
a = "n"
if a == "y":
global b
global f
b = input("何日後に設定しますか?: ")
print("実行日まであと{}日です".format(b))
f = open('jigensave.txt','w')
f.write(b)
f.close()
elif a == "n":
f = open('jigensave.txt','r')
for b in f:
b = int(b) - 1
print("実行まであと{}日です".format(b))
f = open('jigensave.txt','w')
f.write(str(b))
f.close()
#実行日を決定
future = today + datetime.timedelta(days=int(b))
#実行日から30日を取得(継続期間)
dur = future + datetime.timedelta(days=30)
#継続期間表示
for i in range((dur - future).days + 1):
jikkou = future + datetime.timedelta(days = i)
if today < jikkou:
print(str(jikkou) + ":実行予定です")
elif today > jikkou:
print(str(jikkou) + ":過去へ戻ることはできません")
elif today == jikkou:
print("実行しました")
#シェルコマンドを実行
cmd = "ls "
sp.call( cmd, shell=True )
print("実行日でなければ5秒後にソフトをキルします")
#起動後5時間後にPCをシャットダウン
cmd2 = "shutdown -h +300"
sp.call( cmd2, shell=True )
time.sleep(5)
スクリプトの立ち上がりがあまりにも早く
デスクトップの環境が揃うまでにスクリプトが終わってしまう
ことに気づきました
#!/usr/bin/python3.7
# -*- coding: utf-8 -*-
import datetime
import time
import sys, select
import subprocess as sp
print("しばらくおまちください")
#立ち上がりのウエイト設定
time.sleep(5)
#今日を取得
today = datetime.date.today()
print(today)
print("実行日を更新しますか?(y or notuch is run): ")
#インプット選択10秒間キー入力がなければマイナス一日
i, o, e = select.select( [sys.stdin], [], [], 10 )
if (i):
print("input", sys.stdin.readline().strip())
a = "y"
else:
print("notuch key")
a = "n"
if a == "y":
global b
global f
b = input("何日後に設定しますか?: ")
print("実行日まであと{}日です".format(b))
f = open('jigensave.txt','w')
f.write(b)
f.close()
elif a == "n":
f = open('jigensave.txt','r')
for b in f:
b = int(b) - 1
print("実行まであと{}日です".format(b))
f = open('jigensave.txt','w')
f.write(str(b))
f.close()
#実行日を決定
future = today + datetime.timedelta(days=int(b))
#実行日から30日を取得(継続期間)
dur = future + datetime.timedelta(days=30)
#継続期間表示
for i in range((dur - future).days + 1):
jikkou = future + datetime.timedelta(days = i)
if today < jikkou:
print(str(jikkou) + ":実行予定です")
elif today > jikkou:
print(str(jikkou) + ":過去へ戻ることはできません")
elif today == jikkou:
print("実行しました")
#シェルコマンドを実行
cmd = "ls "
sp.call( cmd, shell=True )
print("実行日でなければ5秒後にソフトをキルします")
#起動後5時間後にPCをシャットダウン
cmd2 = "shutdown -h +300"
sp.call( cmd2, shell=True )
time.sleep(5)
たちあがりにウエイトをいれてみました
これでも早い場合は数字を変更してみてください
あと...savefileはpyfileと同じ階層にできるといっていたのですがどうやら/home/usrnameの下にできているようですので
一応訂正...ファイル名 .をつけて隠し属性にしたほうがいいのかなぁ?
まあ 必要なら...そのときに...
0 件のコメント:
コメントを投稿