Sto cercando di eseguire un comando di Linux in programma c utilizzando chiamata di sistema di sistema, ma il non vogliono per eseguire il dump dei registri di output o di errore sul terminale. Cosa dovrei fare? C'è un altro modo di fare questo?Eseguire un comando di Linux nel programma c
14
A
risposta
23
della chiamata di sistema() utilizza una shell per eseguire il comando, è possibile reindirizzare stdout e stderr a/dev/null, ad esempio
system("ls -lh >/dev/null 2>&1");
3
Mostra codice.
Prova ad esempio:
sistema ("ls");
11
popen è un altro modo in cui si può fare la stessa cosa:
void get_popen()
FILE *pf;
char command[20];
char data[512];
// Execute a process listing
sprintf(command, "ps aux wwwf");
// Setup our pipe for reading and execute our command.
pf = popen(command,"r");
// Error handling
// Get the data from the process execution
fgets(data, 512 , pf);
// the data is now in 'data'
if (pclose(pf) != 0)
fprintf(stderr," Error: Failed to close command stream \n");
return;
}
+0
A differenza di altre risposte, questo permette anche di ottenere l'output del programma. –
Problemi correlati
- 1. Passare gli argomenti nel programma C dalla riga di comando
- 2. Alternativa di system() in c Linux per eseguire un comando di terminale su linux
- 3. Argomenti della riga di comando nel programma C utilizzando Netbeans
- 4. Esegui un altro programma in Linux da un programma C++
- 5. linux/gcc: funzionalità ldd dall'interno di un C/programma C++
- 6. Come si esegue un programma esterno nel codice C in linux con argomenti?
- 7. Eseguire un semplice calcolo nel programma NANT
- 8. Come eseguire un programma C su Ubuntu?
- 9. L'esecuzione del programma C in Linux Terminal
- 10. Come abilitare il core dump nel mio programma Linux C++
- 11. Come eseguire un programma dall'ingresso del terminale (linux)?
- 12. Perché il comando cd non funziona nel mio programma shell?
- 13. Esecuzione di un comando Console Linux in C#
- 14. Shellcode nel programma C
- 15. * sulla riga di comando linux
- 16. Compilare il programma IOS dalla riga di comando linux
- 17. come eseguire un comando al terminale dal programma java?
- 18. Errore nel tentativo di eseguire un semplice programma RPC
- 19. Linux: scrivere un programma C che controlli una shell
- 20. Come posso eseguire "ls" con le opzioni di un programma C?
- 21. Come può un programma java decidere quale comando eseguire a seconda di os
- 22. Impossibile eseguire il programma C tramite cmd
- 23. Utilizzare CMake per eseguire un programma C++ post-build
- 24. Letterale "o" nel programma C++?
- 25. Esecuzione di un comando linux da python
- 26. Eseguire tre comandi in un'unica riga di comando in Linux
- 27. file eseguibili di default di windows nel programma C
- 28. Come eseguire un programma CLion nel terminale Gnome?
- 29. Come eseguire un programma Hadoop?
- 30. Come eseguire un testcase esterno (Class, junit) nel programma java?
+1, Aggiunta la ulteriore ');' è un esercizio lasciato al lettore :) –