へっぽこびんぼう野郎のnewbie日記

けろけーろ(´・ω・`)! #vZkt8fc6J

gnome-schedule(タスクスケジューラ)がGUI操作しかできないのでcrontab使おうとしたらno mta installedとか出てきてpostfixインストールしたらよくわからんログ吐いて泣きたい

#! /usr/bin/env python

# -*- coding:utf-8 -*-

 

import wx

class CustomFrame(wx.Frame):

    def __init__(self, title):

        wx.Frame.__init__(self, None, -1, title, size=(400,80))

        panel = wx.Panel(self)

        statictext = wx.StaticText(panel, -1, title)

        font = wx.Font(60, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL)

        statictext.SetFont(font)

        layout = wx.BoxSizer(wx.VERTICAL)

        layout.Add(statictext)

        panel.SetSizer(layout)

        self.Show()

if __name__ == '__main__':

    app = wx.App(False)

    CustomFrame('ここに文字を入れるよ!')

    app.MainLoop()

 

こういうやつを書いて、これをタスクスケジューラで起動させたかった。

シェルから、

$ python schedu.py 1h after "髪を切りにいくよ!"

ってやったら、

 1時間後に髪を切りに行くよ!ってウィンドウが立ち上がる。

シェルから、

$ python schedu.py 12h 35m  "髪を切りにいくよ!"

ってやったら、

12時35分に髪を切りに行くよ!ってウィンドウが立ち上がるヤツ。

 

ウィンドウ繰り出すguiは適当でいいし、

引数取得するpyファイル作れば、

あとはそのpyファイルの実行結果をタスクスケジューラに渡して、ウィンドウには文字だけ渡しておけば、楽勝だなって思ってたら、

Crontabからコマンド結果が出力しない。コマンド自体はやってるっぽい。

(時間になるとパソコンがウィーンって言い始めるし)

どういうことなんだ……

 

$ cat /var/log/syslog

として、

Jan  7 09:21:02 userPCnekoneko CRON[6289]: (user) CMD (sh /home/user/backlight)

Jan  7 09:21:02 userPCnekoneko CRON[6288]: (CRON) info (No MTA installed, discarding output)

こういう情報を吐いたから、

mta installでググって、

postfixとかあったから、適当に

$ sudo apt-get install postfix 

とやってインストールしたら、

Jan  7 09:36:01 userPCnekoneko CRON[30352]: (user) CMD (/bin/sh /home/user/backlight)

Jan  7 09:36:02 userPCnekoneko postfix/pickup[28581]: 7D0D9281EEF: uid=1000 from=<user>

Jan  7 09:36:02 userPCnekoneko postfix/cleanup[30358]: 7D0D9281EEF: message-id=<20140107003602.7D0D9281EEF@userPCnekoneko>

Jan  7 09:36:02 userPCnekoneko postfix/qmgr[28582]: 7D0D9281EEF: from=<user@userPCnekoneko>, size=569, nrcpt=1 (queue active)

Jan  7 09:36:03 userPCnekoneko postfix/local[30360]: 7D0D9281EEF: to=<user@userPCnekoneko>, orig_to=<user>, relay=local, delay=0.82, delays=0.59/0.08/0/0.15, dsn=2.0.0, status=sent (delivered to mailbox)

Jan  7 09:36:03 userPCnekoneko postfix/qmgr[28582]: 7D0D9281EEF: removed

今度はこんなの吐きやがった。

 意味がわからないエラーだ。

postfixってなんでメール関係のヤツが出てくるんだ。許せん。

 

ていうかgnome-scheduleではスケジュール通り起動できたのに、

それの元であろうcrontabではどうして起動できないんですか。

なんでCLIは難しいんだ。

いや、CLIが難しいっていうか、GUIは簡単にする為にエライ人が作っただけであって、そのGUIもCLIからできてるから、結局カスタマイズするためにはCLIを勉強しないとわからないんだよね。

ていうか、CLIからCLIのプログラムをうまく使えないのに、GUIのプログラムをうまく使うなんて夢のまた夢。

しかもGUIは一度こう!って決めたら硬直性あるけど、CLIはそんなにないし。

 

とりあえずCrontabがよくわかりません。