«pipe» 태그된 질문

유닉스 파이프는 두 프로세스의 파일 디스크립터를 연결합니다. <unistd.h>에 선언 된 POSIX pipe () 함수를 사용하여 파이프를 만듭니다. 쉘은 "|"를 사용하여 프로세스간에 파이프를 생성합니다.

13
파이프에서 버퍼링 끄기
두 가지 명령을 호출하는 스크립트가 있습니다. long_running_command | print_progress long_running_command인쇄가 진행하지만 난 그게 불만입니다. 나는 print_progress그것을 더 멋지게 만들기 위해 사용 하고 있습니다 (즉, 진행 상황을 한 줄로 인쇄합니다). 문제 : stdout에 파이프를 연결하면 4K 버퍼가 활성화되어 멋진 인쇄 프로그램에 아무것도 얻지 못합니다 ... 아무것도 ... 아무것도 ... 많은 ... …
395 shell  pipe  buffer 



1
배쉬 : "> |"는 무엇을 하는가?
나는이 글을 방금 보았다; $ some-command &gt;| /tmp/output.txt 수직 파이프는 표준 리디렉션에서 한 명령의 출력을 다른 파이프로 "파이핑"하는 데 사용됩니다 &gt;|. 실제로이 &gt;시나리오에서 와 동일하게 완전히 쓸모가 없습니까?

6
파이프 버퍼는 얼마나 큽니까?
에 주석으로 "| 진정한"나는 이유에 혼란 스러워요 메이크가하는 것과 같은 효과가 있습니다에서 "|| 사실" 사용자 CJM는 썼다 : 피해야 할 또 다른 이유 | true는 명령이 파이프 버퍼를 채우기에 충분한 출력을 생성하면 true를 읽기 위해 대기하는 것을 차단한다는 것입니다. 파이프 버퍼의 크기를 알 수있는 방법이 있습니까?
146 pipe  buffer 

7
이전 명령의 출력을 인수로 다음에 전달
데이터를 stdout ( command1 -p=aaa -v=bbb -i=4)으로 출력하는 명령이 있습니다. 출력 라인은 다음 값을 가질 수 있습니다. rate (10%) - name: value - 10Kbps 그 '속도'를 저장하기 위해 출력을 grep하고 싶습니다 (파이프가 여기서 유용 할 것입니다). 마지막으로 두 번째 명령의 매개 변수 값이 되길 원합니다 (말하자 command2 -t=${rate}). 내 편이 …

4
“cat file | ./binary”및“./binary <file”?
바이너리 (수정 할 수 없음)가 있으며 다음을 수행 할 수 있습니다. ./binary &lt; file 나는 또한 할 수 있습니다 : ./binary &lt;&lt; EOF &gt; "line 1 of file" &gt; "line 2 of file" ... &gt; "last line of file" &gt; EOF 그러나 cat file | ./binary 나에게 오류를 준다. 왜 …


3
임시 데이터 용 의사 파일
나는 종종 반복되는 방식으로 파일 (예 : wdiff)의 입력 만 허용하는 명령 줄 프로그램에 비교적 짧은 문자열 데이터 (여러 줄이 될 수 있음)를 공급하려고합니다. 물론 하나 이상의 임시 파일을 작성하고 거기에 문자열을 저장 한 후 파일 이름을 매개 변수로 사용하여 명령을 실행할 수 있습니다. 그러나 데이터가 실제로 디스크에 기록되면이 절차가 …
98 bash  files  pipe 

4
파이프 명령은 어떤 순서로 실행됩니까?
쉘이 실제로 파이프 명령을 실행하는 방법에 대해 생각한 적이 없습니다. 나는 파이프 에 대해 생각하는 방식으로 " 한 프로그램의 stdout이 다른 프로그램 의 stdin에 파이프 된다 "고 항상 들었습니다 . 그래서 당연히 나는 A | B, A가 먼저 실행 된 다음 B는 A의 표준 출력을 가져오고 A의 표준 출력을 입력으로 …
89 pipe  ps 

5
공정 대체 및 파이프
다음을 이해하는 방법이 궁금합니다. 명령의 표준 출력을 다른 표준의 표준 입력으로 파이프하는 것은 강력한 기술입니다. 그러나 여러 명령의 표준을 파이프해야하는 경우 어떻게해야합니까? 여기에서 프로세스 대체가 시작됩니다. 다시 말해, 프로세스 대체가 파이프가 할 수있는 모든 작업을 수행 할 수 있습니까? 대체 프로세스는 무엇을 할 수 있지만 파이프는 할 수 없습니까?

4
diff로 파이프 할 수 없습니까?
먼저 수동으로 다운로드하지 않고 영리하고 원격 파일을 로컬 파일과 비교하고 싶었습니다. 원격 파일의 내용을 얻을 수 있습니다 ssh user@remote-host "cat path/file.name" 그러나 배관 diff ssh user@remote-host "cat path/file.name" | diff path/file.name 나에게 이것을 준다 : diff: missing operand after `path/file.nae' diff: Try `diff --help' for more information. ssh 키가 설정되어 …

6
한 서버에서 stdout을 다른 서버에서 stdin으로 파이프 할 수 있습니까?
stdout한 CentOS 서버 stdin에서 다른 CentOS 서버 로 파이프해야 합니다. 이게 가능해? 최신 정보 ScottPack, MikeyB 및 jofel 모두 유효한 답변이 있습니다. 내 질문에 보안을 요구 사항으로 지정하지 않더라도 항상 안전하기 때문에 Scott에게 답변을 수여했습니다. 그러나 다른 두 동료의 제안도 효과가 있습니다.
74 pipe  stdout  stdin 



당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.