殼執行這個讓我切實的成果:子處理管道寫入文件故障
wget -O c1 --no-cache "http://some.website" | sed "1,259d" c1 | sed "4,2002d"
在Python這樣做讓我什麼:
subprocess.call(shlex.split("wget -O c1 --no-cache \"http://some.website/tofile\""))
c1 = open("c1",'w')
first = subprocess.Popen(shlex.split("sed \"1,259d\" c1"), stdout=subprocess.PIPE)
subprocess.Popen(shlex.split("sed \"4,2002d\""), stdin=first.stdout, stdout=c1)
c1.close()
這樣做也讓我沒有結果:
c1.write(subprocess.Popen(shlex.split("sed \"4,2002d\""), stdin=first.stdout, stdout=subprocess.PIPE).communicate()[0])
通過'我什麼都沒有'我的意思是文件中的空白輸出。有人在這裏看到任何不尋常的東西嗎?
你在Python命令行解釋器中試過這個嗎?在這個過程的每一步中,各種變量顯示的是什麼? – 2013-03-14 05:32:44
它們是subprocess.Popen對象。 'c1'當然只是一個文件對象。 – eazar001 2013-03-14 05:38:18