我怀疑这个问题以前已经回答过,但我不知道这叫什么,所以我无法真正搜索它。
这是怎么回事:
$ 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
在运行命令之前,shell 将替换<(udevadm info /dev/ttyUSB0)
为(将管道的读取端复制到 fd 63 后)。/dev/fd/63
但是,sudo 默认情况下会关闭所有大于 2 的文件描述符。您可以使用 sudo--close-from
标志来更改此设置,但有更好的方法:
sudo bash -c 'grep H=p <(udevadm 信息 /dev/ttyUSB0)'