как правильно записать в файловую систему /proc
или /sys
в linux в c
?
Могу ли я писать так же, как в любом другом файле, или есть особые соображения, о которых я должен знать?
Например, я хочу эмулировать echo -n mem > /sys/power/state
. Будет ли следующий код правильным способом сделать это?
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv) {
FILE *f;
f = fopen("/sys/power/state", "w");
if(f == NULL) {
printf("Error opening file: /sys/power/state\n");
exit(1);
}
fprintf(f,"%s","mem");
fclose(f);
}
echo
не знает, что пишет вsys
, почему ваша программа должна? - person n. 1.8e9-where's-my-share m.   schedule 02.08.2020/proc
или/sys
. - person n. 1.8e9-where's-my-share m.   schedule 02.08.2020/proc
или/sys
в C. В зависимости от того, что вы хотите сделать, вы также можете создать запись proc, посмотрите здесь пример linux.die.net/lkmpg/x769.html . В вашем примере я вижу, что вы открываете файл и закрываете его, но не читаете и не пишете в него. Вы пробовали? - person Bhaskar Tallamraju   schedule 02.08.2020