ttyPS* 中的 PS 代表什么?
一般来说,我可以在哪里找到 下设备的扩展名称/dev
?
答案1
注意:这个答案是假设 Linux
一般来说,我可以在哪里找到 /dev 下设备的扩展名称?
这些设备没有“扩展名称”,但是
udevadm info -a /dev/ttyPSx
会告诉你很多关于他们的有趣信息。
如果你没有 udev,你可以获取设备的类型、主要和次要,通过 查找/sys/dev
,并从文件中获得相同的信息/sys/devices/
:
devinfo(){
local p=$(readlink -f $(ls -l "$1" | sed 's@^\(.\)[^,]* \([0-9][0-9]*\), *\([0-9][0-9]*\).*@/sys/dev/\1*/\2:\3@'))
while true; do
case $p in
/sys/devices/*)
if [ -f "$p/uevent" ]; then
echo ">>> $p"; cat "$p/uevent"; echo
fi
p=${p%/*};;
*)
break;;
esac
done
}
[prompt] devinfo /dev/ttyMT1
>>> /sys/devices/soc/11003000.apuart1/tty/ttyMT1
MAJOR=204
MINOR=210
DEVNAME=ttyMT1
>>> /sys/devices/soc/11003000.apuart1
DRIVER=mtk-uart
OF_NAME=apuart1
OF_FULLNAME=/soc/apuart1@11003000
OF_COMPATIBLE_0=mediatek,mt6735-uart
OF_COMPATIBLE_N=1
MODALIAS=of:Napuart1T<NULL>Cmediatek,mt6735-uart
>>> /sys/devices/soc
OF_NAME=soc
OF_FULLNAME=/soc
OF_COMPATIBLE_0=simple-bus
OF_COMPATIBLE_N=1
MODALIAS=of:NsocT<NULL>Csimple-bus
注意:并非所有 Linux 系统都有可用的stat
,awk
甚至sed
程序。这种拼凑似乎可以在某些 Linux 设备上运行,比如我的台式机、路由器、手机和行车记录仪。在较旧的 Android 中,sed
是一个损坏的 POS,甚至无法处理echo pee | sed s/e/a/
(它将打印papee
)。