2011-11-22 101 views
2

我想只保存script.py的一部分輸出,並保存到另一個文件夾中的文件。如何將Python腳本的部分輸出發送到文本文件?

script.py打印出文件名及其大小的列表,像

file_asfs.txt- 2KB 
file_jsdfhkjh.doc- 17KB 
.... 

如果我要保存只有那些正好在文本文件/溫度/文件列表2KB的文件名列表,我該如何去做呢?

+1

在UNIX中,你可以使用'sed','awk',' grep'等來從輸出中提取你想要的部分。 – fardjad

回答

2
script.py | grep "\\b2KB$" > output.txt 
+2

也會抓到12KB以及... – yosukesabai

+0

我只想保存文件名,而不是整個字符串,包括名稱和大小... – user1058492

+0

我明白了,使用grep和awk的組合 – user1058492

1

,你可以創建一個程序對其進行過濾: filter.py:

import sys 
for line in sys.stdin: 
     line=line.strip() 
     if line.endswith("- 2KB"): 
       print line 

然後去

python script.py | python filter.py > /temp/filelist.txt