!["Sudo" 접두어가 붙은 명령은 sudo 없이는 작동하지 않습니다.](https://linux55.com/image/46993/%22Sudo%22%20%EC%A0%91%EB%91%90%EC%96%B4%EA%B0%80%20%EB%B6%99%EC%9D%80%20%EB%AA%85%EB%A0%B9%EC%9D%80%20sudo%20%EC%97%86%EC%9D%B4%EB%8A%94%20%EC%9E%91%EB%8F%99%ED%95%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
이 질문은 이전에 답변된 적이 있는 것 같은데, 이름이 무엇인지 모르기 때문에 실제로 검색할 수는 없습니다.
어떻게 진행되고 있나요?
$ 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)'