"Sudo" 접두어가 붙은 명령은 sudo 없이는 작동하지 않습니다.

"Sudo" 접두어가 붙은 명령은 sudo 없이는 작동하지 않습니다.

이 질문은 이전에 답변된 적이 있는 것 같은데, 이름이 무엇인지 모르기 때문에 실제로 검색할 수는 없습니다.

어떻게 진행되고 있나요?

$ grep H=p <(udevadm info /dev/ttyUSB0)
E: ID_PATH=pci-0000:00:1d.0-usb-0:1.5.2:1.0

하지만 그렇지 않나요? :

$ sudo grep H=p <(udevadm info /dev/ttyUSB0)
grep: /dev/fd/63: No such file or directory

이 경우 sudo가 필요하지 않다는 점을 염두에 두십시오.

답변1

명령을 실행하기 전에 쉘이 <(udevadm info /dev/ttyUSB0)대체됩니다(파이프의 읽기 끝을 fd 63에 복사한 후) . /dev/fd/63그러나 sudo는 기본적으로 2보다 큰 모든 파일 설명자를 닫습니다. sudo --close-from플래그를 사용하여 이를 변경할 수 있지만 더 좋은 방법이 있습니다.

sudo bash -c 'grep H=p <(udevadm 정보/dev/ttyUSB0)'

관련 정보