파일 출력을 STDOUT으로 리디렉션하는 방법은 무엇입니까?

파일 출력을 STDOUT으로 리디렉션하는 방법은 무엇입니까?

여기와 비슷한 질문 파일 출력을 표준 출력으로 리디렉션하는 방법은 무엇입니까? 그러나 거기에 제시된 해결책은 보편적이지 않습니다.

내 질문:STDOUT으로 출력을 생성하는 명령이 있습니다. 동시에 매개변수를 지정하여 파일에 직접 다른 출력을 생성할 수도 있습니다.

tcsh$ hmmscan --domtblout FILEOUTPUT Pfam-A.hmm query.fasta

Pfam-A.hmm은 데이터베이스 파일(입력)입니다. query.fasta도 입력 파일입니다.

FILEOUTPUT을 STDOUT으로 리디렉션하는 방법은 무엇입니까?

배경:수천 개의 입력에 이 명령을 사용할 계획이며 각 입력에 대해 별도로 실행해야 합니다. 명령은 Python 스크립트에서 호출되며 subprocess 모듈을 사용하여 해당 FILEOUTPUT을 메모리/변수로 직접 읽고 싶습니다. subprocess 모듈을 사용하여 STDOUT을 얻는 방법을 알고 있으므로 FILEOUTPUT을 STDOUT으로 리디렉션할 수 있다면...

나는 다음과 같은 것을 시도했습니다(결국 오류나 파일이 생성됨).

tcsh$ hmmscan --domtblout >/dev/tty Pfam-A.hmm query.fasta
tcsh$ hmmscan --domtblout >(mypipe) Pfam-A.hmm query.fasta
tcsh$ hmmscan --domtblout >$ Pfam-A.hmm query.fasta
tcsh$ hmmscan --domtblout >($1) Pfam-A.hmm query.fasta
tcsh$ hmmscan --domtblout >cat Pfam-A.hmm query.fasta
tcsh$ hmmscan --domtblout test.tab Pfam-A.hmm query.fasta >/dev/tty

답변1

hmmscan 프로그램이 일반 파일 대신 stdout에 쓰도록 하려면 /dev/stdout대신 일반 파일 이름을 지정하십시오. 예를 들어

$ hmmscan --domtblout /dev/stdout Pfam-A.hmm query.fasta

관련 정보