Python Glossary English

все Python 3osфункция

os.dup2

os — файловые дескрипторы

Дублирует fd в fd2 (закрыв fd2 при необходимости) и возвращает fd2.

Синтаксис

os.dup2(fd, fd2)

Если fd2 был открыт, он закрывается молча, — так перенаправляют стандартные потоки на уровне ОС: dup2(fileno, 1) отправит в файл и вывод дочерних программ, и вывод библиотек на C. Простая замена sys.stdout этого не делает. По умолчанию новый дескриптор наследуется (inheritable=True).

Примеры

import os
fd = os.open(os.__file__, os.O_RDONLY)
fd2 = os.dup(fd)
print(os.dup2(fd, fd2) == fd2)   # → True
os.close(fd)
os.close(fd2)

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности