開発環境
- OS X Mavericks - Apple(OS)
- Emacs (CUI)、BBEdit - Bare Bones Software, Inc. (GUI) (Text Editor)
- Python 3.4 (プログラミング言語)
Head First C ―頭とからだで覚えるCの基本(David Griffiths (著)、Dawn Griffiths (著) 中田 秀基(監訳)(翻訳)、木下 哲也 (翻訳)、オライリージャパン)の10章(プロセス間通信: お話は楽しい)、自分で考えてみよう(p.435)をpythonで考えてみる。
自分で考えてみよう(p.435)
コード(BBEdit, Emacs)
newshound2.py
#!/usr/bin/env python3
#-*- coding: utf-8 -*-
import os
import sys
def error(msg):
print('{0}: {1}'.format(msg, err))
sys.exit(1)
phrase = sys.argv[1]
env = {'RSS_FEED':"http://rss.cnn.com/rss/edition.rss"}
try:
with open('stories.txt', 'w') as f:
try:
pid = os.fork()
except Exception as err:
error('プロセスをフォークできません。')
if pid == 0:
try:
os.dup2(f.fileno(), sys.stdout.fileno())
except Exception as err:
error('標準出力をリダイレクトできません。')
try:
os.execle('/usr/bin/python', '/usr/bin/python', 'rssgossip.py',
phrase, env)
except Exception as err:
error('スクリプトを実行できません。')
except Exception as err:
error('stories.txtを開けません。')
入出力結果(Terminal, IPython)
$ ./newshound2.py Japan $ cat stories.txt Japan's cross-dressing icon China and Japan's 'war of words' $
0 コメント:
コメントを投稿