제어 연산자로 대기열에 넣을 수 있는 명령 수는 몇 개입니까?

제어 연산자로 대기열에 넣을 수 있는 명령 수는 몇 개입니까?

||제어 연산자에 대해 읽었는데 &&제어 연산자(예: 및 )에 맞춰 정렬할 수 있는 명령 수에 제한이 있는지 궁금합니다 ;.

그리고 이것을 조절할 수 있는 설정 파일이 있나요?

추신: 라벨을 어떻게 지정해야 할지 잘 모르겠습니다.

답변1

실제로는 없습니다. 컴퓨터 메모리가 대기열을 처리할 수 있는 한 셸은 최선을 다해야 합니다. ~에 따르면POSIX:

sh -c셸은 입력을 파일의 줄, 대화형 셸의 터미널에서 읽거나 또는 의 경우 문자열로 읽어야 합니다 system(). 입력 라인은 다음과 같습니다.길이 무제한. 이 줄은 일반 태그 인식과 여기에서 문서 처리라는 두 가지 주요 모드를 사용하여 구문 분석되어야 합니다.

기본적으로 이 모든 것을 || &&함께 연결하면 쉘 파서에 대한 입력 한 줄이 됩니다. 왜냐하면 쉘 파서가 각 토큰을 파싱해야 하기 때문입니다.명령 목록그런 다음 목록을 구성하는 단순 명령이 평가되고 실행됩니다.

제가 이런 신고를 한 적이 있어요.여기- 파서의 작동 방식을 자세히 설명하는 명령 예제가 많이 있습니다.(또는 적어도 그것이 어떻게 작동하는지 이해합니다).

답변2

나는 당신이 직면하는 한계가 명령 수가 아니라 sh 명령 버퍼의 크기라는 것을 알게 될 것이라고 믿습니다. 현재 Linux 시스템에서는 크기가 64K 문자 정도인 것으로 생각됩니다.

관련 정보