我写了以下脚本
#!/bin/bash
echo "Power Details"
fall='/sys/class/power_supply/BAT1'
full=cat $fall/energy_full
echo 'printing here'
echo $full
Run Code Online (Sandbox Code Playgroud)
它显示以下错误:
./power.sh: line 4: /sys/class/power_supply/BAT1/energy_full: Permission denied
Run Code Online (Sandbox Code Playgroud)
我正在访问的文件对所有人都具有读取权限。另外,虽然我只是打印文件的输出,例如(编辑代码的第 4 行):
cat $path/energy_full
Run Code Online (Sandbox Code Playgroud)
它没有显示错误。为什么会这样?如何为cat filename
V / Svar1 = cat filename
有什么不同?在不更改要访问的文件的读写执行权限的情况下,我应该如何解决该问题?
注意:我以 root 用户身份运行 Kali Linux