【发布时间】:2019-08-29 10:19:37
【问题描述】:
我无法创建 BASH 变量 $path 因为我收到错误权限被拒绝。
我想用 C 代码执行这个 BASH 脚本:
#define AINinit "\
#!/bin/bash \n\
path=`/sys/devices/bone_capemgr.*/slots` \n\
echo <password> | sudo -S echo cape-bone-iio > $path \n\
"
当我尝试执行 path=/sys/devices/bone_capemgr.*/slots 时,我收到权限被拒绝错误。 /sys/devices/bone_capemgr.*/slots 是目录。
我试图将chmod 777 添加到/sys/devices/bone_capemgr.*/slots,但它仍然不起作用。
我正在执行这个命令:
system(AINinit);
【问题讨论】:
-
/sys/devices/bone_capemgr.*/slots是你想执行的程序,还是你想把echo字符串插入的文件? -
您的问题中几乎没有 C 代码。你需要向我们展示你想用这个
AINinit宏做什么。 -
你想要
path=/sys/devices/bone_capemgr.*/slots(没有反引号)。 (另外,我很担心里面的通配符*。你也许可以让它工作,但如果你能明确指定确切的路径会好得多。)
标签: c bash embedded beagleboneblack