"man coproc"은 오류를 보고하지만 "help coproc"은 작동합니다(특정 명령에 대한 문서는 어디서 찾을 수 있습니까?)

"man coproc"은 오류를 보고하지만 "help coproc"은 작동합니다(특정 명령에 대한 문서는 어디서 찾을 수 있습니까?)

나는 다음과 같은 지시를 통해 배웠습니다.

Coprocessing은 한 번에 두 가지 작업을 수행합니다. 백그라운드 모드에서 하위 쉘을 생성하고 하위 쉘에서 명령을 실행합니다.

[root@iz2ze9wve43n2nyuvmsfx5z ~]# coproc ( sleep 10; sleep 2 )
[1] 32508
[root@iz2ze9wve43n2nyuvmsfx5z ~]# jobs
[1]+  Running                 coproc COPROC ( sleep 10; sleep 2 ) &

매뉴얼을 참조하면 피드백으로 오류가 발생합니다.

root@iz2ze9wve43n2nyuvmsfx5z ~]# man coproc
No manual entry for coproc
[root@iz2ze9wve43n2nyuvmsfx5z ~]# coproc --info
[1] 32579
[root@iz2ze9wve43n2nyuvmsfx5z ~]# bash: line 25: --info: command not found

[1]+  Exit 127                coproc COPROC --info

help일하다

[root@iz2ze9wve43n2nyuvmsfx5z ~]# help coproc
coproc: coproc [NAME] command [redirections]
    Create a coprocess named NAME.

    Execute COMMAND asynchronously, with the standard output and standard
    input of the command connected via a pipe to file descriptors assigned
    to indices 0 and 1 of an array variable NAME in the executing shell.
    The default NAME is "COPROC".

    Exit Status:
    Returns the exit status of COMMAND.

이것은 매우 혼란스럽습니다.
내가 액세스할 수 있는 수동 명령이 무엇인지 대략적으로 어떻게 알 수 있습니까? 어떻게 구별하나요?

답변1

coproc은 shell 의 쉘 키워드입니다 bash. 키워드는 일반적으로 자체 매뉴얼이 없지만 man쉘 매뉴얼(이 경우 , bash매뉴얼 man bash)에 문서화되어 있습니다. 셸은 bash또한 내장 명령과 와 같은 특수 키워드를 제공하는 help명령(자체 help내장 명령)을 제공합니다 coproc.

bashtype, 에는 명령이 외부 명령인지 내장 명령인지 구별하는 데 도움이 되는 또 다른 내장 명령이 있습니다 .

$ type coproc
coproc is a shell keyword
$ type help
help is a shell builtin
$ type type
type is a shell builtin
$ type ls
ls is /bin/ls

외부 명령이 아닌 사항 bash( ls위의 예에서만 해당) 에 대해서는 설명서(보통 표시된 것보다 더 자세함 )를 사용 help하거나 읽으십시오 . 그 외의 경우에는 .bashhelpman

외부 명령으로도 사용할 수 있지만 셸에서는 여러 명령을 내장 명령으로 제공할 수도 있습니다. 일반적인 예는 다음 echo과 같습니다 printf. 그러나 쉘은 실제로 다음 빌드를 제공할 수 있습니다.test[어느주문하다. 이는 일반적으로 성능상의 이유로 또는 명령의 향상된 버전을 제공하기 위해 수행됩니다.

내부 및 외부 명령은 모두 쉘 매뉴얼과 외부 매뉴얼에 문서화되어 있으며 아마도 다르게 작동할 것입니다. type의 명령은 bash내장 명령을 강제 실행하는 데 사용할 수 있는 명령 이나 외부 명령을 강제 실행하는 데 builtin전체 경로(예: )를 사용할 수 있는 명령을 알려줍니다./bin/echo

set, readcd일반적 으로와 같은 일부 명령오직현재 쉘의 환경을 수정하므로 내장 명령으로 제공됩니다. 이는 쉘 매뉴얼 help에 잘 설명되어 있습니다.bash

관련 정보