pipes — Интерфейс для pipelines оболочки¶
Исходный код: Lib/pipes.py
Модуль pipes определяет класс для абстрагирования концепции pipeline
— последовательности преобразователей из одного файла в другой.
Поскольку модуль использует командные строки /bin/sh, требуется POSIX или
совместимая оболочка для os.system() и os.popen().
Модуль 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¶
Объекты Template, содержат следующие методы:
-
Template.reset()¶ Возвращает шаблон pipeline его начальному состояние.
-
Template.clone()¶ Возвращает новый эквивалентный шаблон pipeline.
-
Template.debug(flag)¶ Если flag верен, включите отладку. Иначе выключите отладку. Когда отладка идет, команды, которые будут выполнены, напечатаны, и раковине дают команду
set -x, чтобы быть более многословной.
-
Template.append(cmd, kind)¶ Добавить новое действие в конц. Переменная cmd должна быть действительной командой оболочки bash. Переменная kind состоит из двух букв.
Первая буква может быть либо
'-'(что означает, что команда читает свой стандартный ввод),'f'(что означает, что команды читают данный файл в командной строке), либо'.'(что означает, что команды не считывают ввод, и, следовательно, должны быть первыми.)Аналогично, вторая буква может быть либо
'-'(что означает, что команда записывает в стандартный вывод),'f'(что означает, что команда записывает файл в командной строке) или'.'(что означает, что команда ничего не пишет, и, следовательно, должна быть последней.)
-
Template.prepend(cmd, kind)¶ Добавляет новое действие в начале. Разъяснения аргументов см. в разделе
append().
-
Template.open(file, mode)¶ Возвращает объект, похожий на файл, открытый для file, но считанный или записанный конвейером. Обратите внимание, что может быть задан только один из
'r','w'.
-
Template.copy(infile, outfile)¶ Копировать infile в outfile через пайп.
