Linux 명령줄의 파이프

Linux 명령줄의 파이프

다음 명령을 고려하십시오.

echo ’.dump’ | sqlite bacula.db > bacula.sq

무엇을 하고 있고 |무엇을 하고 있나요?

어쩌면 누군가 나에게 배관에 관한 매뉴얼을 가르쳐주거나 무슨 일이 일어나고 있는지 설명해 줄 수도 있습니다. 감사해요.

답변1

Shell 파이프 연산자는 |중간 파일을 생성하지 않고 명령의 표준 출력이 다음 명령의 표준 입력이 되도록 합니다.

다음 소스에서 간단한 방법으로 설명된 자세한 정보를 찾을 수 있습니다.

답변2

이 명령은 7자리 문자열을 명령에 쓰고 ’.dump’그 뒤에 개행 문자가 옵니다 sqlite. (총 12바이트)

명령 은 sqlite지시문을 이해하지 못하므로 대상 파일에 아무 것도 쓰지 않고 다음으로 bacula.sq보고합니다.Error: incomplete SQL: ’.dump’표준 에러.

'아포스트로피 대신 작은따옴표 문자를 사용하는 것을 의미했을 수도 있습니다 .

echo '.dump' | sqlite bacula.db > bacula.sq

답변3

|Unix/Linux의 파이프 연산자입니다. 첫 번째 명령의 출력을 두 번째 명령의 입력으로 사용할 수 있는 경우에 사용할 수 있습니다.

예를 들어:

ls -l | less디렉토리에 있는 긴 파일 목록이 표시됩니다. 이 less명령은 ls -l출력을 입력으로 사용하여 위/아래로 스크롤하여 볼 수 있는 파일 목록을 표시합니다.

관련 정보