POSIX 명령 "which --all"은 먼저 PATH의 모든 것을 나열하는 것 이상을 수행합니까?

POSIX 명령 "which --all"은 먼저 PATH의 모든 것을 나열하는 것 이상을 수행합니까?

많은 쉘에는 --all플래그 가 있습니다 which.

--all, -a 첫 번째 항목뿐만 아니라 PATH의 모든 일치 항목을 인쇄합니다.

그러나 which이는 POSIX와 호환되지 shellcheck않습니다 command -v.

command하지만 비슷한 표시는 없습니다 --all.

답변1

type -a -p이 기능을 제공하세요.

-a첫 번째 서비스뿐만 아니라 모든 서비스를 제공하도록 지시하세요.

-p단지 경로를 인쇄하고(그렇지 않으면 <executable> is경로 접두어를 얻게 됨) 별칭과 같은 파일이 아닌 결과를 무시한다는 의미입니다. (또는 -P별칭을 따라 PATH 검색을 강제합니다.)

관련 정보