screenでfortuneプログラムを実行させたいけど、うまくできない。
fortuneプログラムのインストール
MacOSXでは最初から入っていないようなので、mac portでインストールする。
% sudo port install fortune
そうすると、/opt/local/share/games/fortuneにfortune用のファイルが配置される。
fortunes fortunes2-o murphy startrek fortunes-o fortunes2-o.dat murphy-o startrek.dat fortunes-o.dat limerick murphy-o.dat zippy fortunes.dat limerick.dat murphy.dat zippy.dat
fortuneプログラムで遊んでみる
% fortune
It is impossible to enjoy idling thoroughly
unless one has plenty of work to do.
-- Jerome Klapka Jerome
引数を何も指定しないで実行するとfortunesファイルから格言が表示される。
格言のファイルを指定するには引数を与えてやる。
% fortune zippy
I'm DESPONDENT ... I hope there's something DEEP-FRIED under this
miniature DOMED STADIUM ...
ファイルzippyから格言が表示される。
英語では面白くないのでfortuneファイルを作ってみる
例えば、以下のように%を区切り文字としてテキストファイルhogeを作る。
おはよう % こんにちは % おやすみ
このファイルをstrfileコマンドでfortuneファイルに変換する。
% strfile hoge
するとhoge.datというfortune用ファイルが作成される。
このファイルhoge.datとテキストファイルhogeを/opt/local/share/games/fortuneに移動させて、以下のようにコマンドを実行する。
% fortune hoge おはよう
このようにファイルhogeから格言が表示される。
screenからfortuneを実行させたい
idle 10 blankerprg fortune hoge
.screenrcにこのような記述をしてscreenを起動させて、fortuneプログラムの実行を待ってみるとエラーメッセージが出力されてscreenが終了してしまう。
エラーメッセージは以下の通り。
***********はホスト名。
% screen
/var/run/utmp: No such file or directory
reopen fifo /tmp/screens/S-rdera/7346.ttys000.*************: No such file or directory
今、ココで止まってる。解決方法が今のところ、分からない。