[英]C program for executing 'echo' on a target with no /bin directory
我們假設我從主機Linux系統交叉編譯ARM代碼:
#include <stdio.h>
#include <unistd.h>
#include <dirent.h>
int main (void) {
return execl ("/bin/echo", "echo", NULL);
}
我有一個二進制echoFromC
問題在於我的目標,這個二進制文件將運行,沒有/ bin,/ usr等。所以它不會執行命令。
所以我希望最后的二進制文件應該包含執行“echo”所需的所有內容。 它不要尋找/ bin / echo(因為它不存在)。
我該怎么做呢?
實際上我必須實現:
bash> echo 240 > /sys/class/gpio/export
bash> echo out > /sys/class/gpio/gpio240/direction
bash> echo 1 > /sys/class/gpio/gpio240/value
在交流計划
您可以在C中實現這些echo
函數,例如實現echo 240 > /sys/class/gpio/export
,你可以做類似的事情
FILE *fh;
fh = open("/sys/class/gpio/export", "w+");
if (fh == NULL) { /* fopen failed */ }
fwrite("240\n", 1, 4, fh);
fclose(fh);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.