pipes
--- 終端管道接口?
源代碼: Lib/pipes.py
Deprecated since version 3.11, will be removed in version 3.13: The pipes
module is deprecated
(see PEP 594 for details).
Please use the subprocess
module instead.
pipes
定義了一個類用來抽象 pipeline 的概念 --- 將數(shù)據(jù)從一個文件轉(zhuǎn)到另一文件的轉(zhuǎn)換器序列。
由于模塊使用了 /bin/sh 命令行,因此要求有 POSIX 或兼容 os.system()
和 os.popen()
的終端程序。
可用性: Unix。 在 VxWorks 上不可用。
pipes
模塊定義了以下的類:
- class pipes.Template?
對管道的抽象。
示例:
>>> import pipes
>>> t = pipes.Template()
>>> t.append('tr a-z A-Z', '--')
>>> f = t.open('pipefile', 'w')
>>> f.write('hello world')
>>> f.close()
>>> open('pipefile').read()
'HELLO WORLD'
模板對象?
模板對象有以下方法:
- Template.reset()?
將一個管道模板恢復(fù)為初始狀態(tài)。
- Template.clone()?
返回一個新的等價的管道模板。
- Template.debug(flag)?
如果 flag 為真值,則啟用調(diào)試。 否則禁用調(diào)試。 當啟用調(diào)試時,要執(zhí)行的命令會被打印出來,并且會給予終端
set -x
命令以輸出更詳細的信息。
- Template.append(cmd, kind)?
在末尾添加一個新的動作。 cmd 變量必須為一個有效的 bourne 終端命令。 kind 變量由兩個字母組成。
第一個字母可以為
'-'
(這表示命令將讀取其標準輸入),'f'
(這表示命令將讀取在命令行中給定的文件) 或'.'
(這表示命令將不讀取輸入,因而必須放在前面。)類似地,第二個字母可以為
'-'
(這表示命令將寫入到標準輸出),'f'
(這表示命令將寫入在命令行中給定的文件) 或'.'
(這表示命令將不執(zhí)行寫入,因而必須放在末尾。)
- Template.open(file, mode)?
返回一個文件類對象,打開到 file,但是將從管道讀取或?qū)懭搿?請注意只能給出
'r'
,'w'
中的一個。
- Template.copy(infile, outfile)?
通過管道將 infile 拷貝到 outfile。