我有一个嵌入式系统,其中存在/dev/hdaX
和/dev/sdaX
的设备节点,需要从bash脚本中检查哪些对应于实际设备。
test
命令在这里没有帮助 - 两个文件实际存在,都是“可读”的(即具有读取权限),并且被报告为块设备。
我认为最简单的方法是检查文件是否可以实际打开。有没有一种干净的方法在bash中执行此操作,例如cat /dev/hdaX
?
您可以使用read
并检查退出状态:
read -n 1 < /dev/hdaX && echo "good" || echo "bad"