HOwdie do,
我在谷歌搜索过,我还没有找到这条线的作用:
smartstat = $(($?& 8))
为了正确看待,我试图直接访问退出状态的第3位。
SmartCTL默认使用8位。当发生错误(例如磁盘故障)时,它会使第三个位为1并向日志发送错误。
smartstat = $(($?& 8))有人直接访问第三位。直接来自smartctl的手册页:
smartstat = $(($?& 8)) 这只关注退出状态$ 3的第3位? (自8 = 2 ^ 3)。如果SMART状态检查返回“磁盘失败”,则shell变量$ smartstat将为非零值,否则为零。
那么,谁能告诉我什么&是在那行代码吗?
答案 0 :(得分:2)
&安培;是一个“按位和”运算符。设A = 15
A = 1111(二进制)
8 = 1000(二进制)
A& B = 1000(二进制)