Bash -f 检查 /sys/class/<device>/
Bash -f check /sys/class/<device>/
我正在尝试制作监控笔记本电脑 (T480) 电池的脚本。有2个电池,内部和外部。充电时外部信息似乎消失了capacity
。
/sys/class/power_supply/BAT0/capacity
问题
我检查了充电情况,如果文件存在,问题是它通过 -f
丢失 capacity
,它是 ASCII text
所以应该不是问题.
脚本
我也试过-e
-d
-c
,但是没有成功。
#!/bin/bash
...
[[ -f /sys/class/power_supply/BAT0/capacity ]] && {
EXTERNAL="$(cat /sys/class/power_supply/BAT0/capacity)"
...some logic
}
..
正在将我的 转换为答案
/sys/class/power_supply/BAT0
是一个符号链接,如 ls -lta
:
的输出所示
root@deb:~# cd /sys/class/power_supply/
root@deb:/sys/class/power_supply# ls -tla
total 0
lrwxrwxrwx 1 root root 0 May 21 14:02 BAT0 -> ../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0A:00/power_supply/BAT0
lrwxrwxrwx 1 root root 0 May 21 14:02 ADP0 -> ../../devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0003:00/power_supply/ADP0
drwxr-xr-x 48 root root 0 May 21 14:02 ..
drwxr-xr-x 2 root root 0 May 21 14:02 .
root@deb:/sys/class/power_supply#
Obnoxious screen shot
而不是使用 -f
标志:
True if file exists and is a regular file.
由于您正在处理符号链接,我建议-L
标记 which
True if file exists and is a symbolic link.
我正在尝试制作监控笔记本电脑 (T480) 电池的脚本。有2个电池,内部和外部。充电时外部信息似乎消失了capacity
。
/sys/class/power_supply/BAT0/capacity
问题
我检查了充电情况,如果文件存在,问题是它通过 -f
丢失 capacity
,它是 ASCII text
所以应该不是问题.
脚本
我也试过-e
-d
-c
,但是没有成功。
#!/bin/bash
...
[[ -f /sys/class/power_supply/BAT0/capacity ]] && {
EXTERNAL="$(cat /sys/class/power_supply/BAT0/capacity)"
...some logic
}
..
正在将我的
/sys/class/power_supply/BAT0
是一个符号链接,如 ls -lta
:
root@deb:~# cd /sys/class/power_supply/
root@deb:/sys/class/power_supply# ls -tla
total 0
lrwxrwxrwx 1 root root 0 May 21 14:02 BAT0 -> ../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0A:00/power_supply/BAT0
lrwxrwxrwx 1 root root 0 May 21 14:02 ADP0 -> ../../devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0003:00/power_supply/ADP0
drwxr-xr-x 48 root root 0 May 21 14:02 ..
drwxr-xr-x 2 root root 0 May 21 14:02 .
root@deb:/sys/class/power_supply#
Obnoxious screen shot
而不是使用 -f
标志:
True if file exists and is a regular file.
由于您正在处理符号链接,我建议-L
标记 which
True if file exists and is a symbolic link.