내가 할 :파이썬 os.dup 및 부작용 내 파이썬 스크립트의 시작 부분에서
if '-' in args:
fd = os.fdopen(os.dup(0))
sys.stderr.write(fd.read())
fd.close()
나는이 내 프로그램의 나머지 부분의 동작에 영향을주지 것이라고 생각하지만,에, 즉 보인다 이 4 줄을 주석 처리하면 코드가 작동하지만 실행하면 예상치 못한 결과가 발생합니다 (문제 해결에 어려움이 있습니다).
os.dup를 잘못 사용하고 있습니까?
감사합니다.
문제 해결에 어려움이있는 "예기치 않은 결과"를 설명하지 않고 질문이 불완전합니다. –
전에이 패턴을 보았습니다! 그는 자신의 입력 내용을 엿보 으려하지만, 나머지 프로그램이 그것을 읽을 수 있기 전에 "사용"하지 않고있다. 나 자신의 유닉스 청소년에서 필자는 파일 기술자를 깨닫기 전에 한번 시도했다. *와 * 실제 파일은 두 가지 전혀 다른 것들입니까? :) –