How do I get system answer in c


 
Thread Tools Search this Thread
Top Forums Programming How do I get system answer in c
# 1  
Old 05-12-2008
How do I get system answer in c

How do I get the answer of a system call that is printed in the terminal?

for example:

I execute system("pwd");
and get the answer /home/user/

But because I need to send this result to somewhere, I need to store it in a string.

Thanks in advance.
# 2  
Old 05-12-2008
popen()

Use popen() instead.
# 3  
Old 05-12-2008
Instead of what?
I do not create or open a file. All I need is to get the answer of any command from the command line into a string, "pwd" is just an example.

Can you please give a simple example?

Situation: I have

char command[50] = "ls";

system(command); // executes the string

___________________?

Last edited by eldaran; 05-12-2008 at 09:27 PM..
# 4  
Old 05-13-2008
you can use popen following way:

Code:
#include <stdio.h>
int main()
{
#define BUFSIZE 1024
char buf[1024];
FILE *fp = NULL;
char *cmd = "ls -al /home/";
int nbytes = 0;
int fbytes = BUFSIZE;
int ch =0;
fp = popen(cmd, "r");
if (fp == NULL)  {
        printf("unable to open %s", cmd);
        exit(0);
}

while (nbytes < fbytes && (ch = fgetc(fp)) != EOF)
        buf[nbytes++] = ch;
buf[nbytes] = 0;
pclose(fp);
printf("output for %s %d:\n %s", cmd , nbytes, buf);
return 0;
}

# 5  
Old 05-13-2008
thanks for answering
# 6  
Old 05-13-2008
it works for some commands for example pwd, ifconfig, netstat, etc; but it does not get some answers such as "No such file or directory" when I used "gcc nonExistent.c" or "route help".
Any ideas?
# 7  
Old 05-14-2008
netstat, ifconfig are not in your PATH. Try with providing full path or Might be you need supreuser permissions.
First try these commands on your promopt/shell.
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Solaris

==please answer the following questions==

Hello :) ! i've few doubts. 1) how can we find the newly attached disk in SOLARIS ? 2) how to change port number of a service ? 3) how can we find that autofs is running in our system without using svcs and prstat commands ? 4) we know that there are several types of dns servers in... (0 Replies)
Discussion started by: vamshigvk475
0 Replies

2. UNIX for Dummies Questions & Answers

I welcome all to answer my Q's

Hi everyone,, I am new to the forum...but not to Unix. I have gathered few questions from my mates who attended interviews in various companies as I have to attend one on dec 3rd for Sys admin position. Please respond with the answers you know and also help with various other interview... (2 Replies)
Discussion started by: impawan
2 Replies

3. Shell Programming and Scripting

help me to answer this

Hello everyone I update my question. Thanks for your reply joeyg If I type the last command and send to a text file. I get this last >usuarios.txt root pts/0 160.40.35.277 May 22 11:08 still logged in. root pts/0 alopez02 May 22 09:23 - 10:11 (00:47) root pts/0 160.40.35.277 May 20... (0 Replies)
Discussion started by: lo-lp-kl
0 Replies

4. UNIX for Dummies Questions & Answers

Answer them if u can...

Try to answer these questions on Unix: 1.what will be the segment() function do? 2.How Unix is more powerful than Windows? 3.Where ownership details will be stored of a particular file in Unix? 4.State different uses of ^ symbol in regular expressions. 5.What does export command used for?... (5 Replies)
Discussion started by: dreambig
5 Replies

5. UNIX for Dummies Questions & Answers

quick answer

i know by posting this people are going to get mad at me but, when i try to download unix for my Windows XP i find a whole bunch of files that i dont know what to do with, so please help, sorry if this has already been posted... or is a stupid question :o (9 Replies)
Discussion started by: DarkestEvil
9 Replies

6. Solaris

Can anybody answer this.....

Hi i am trying the threads concept in unix environment using C... but i am getting error of "wait_fd: Couldn't find procinfo for fd 24"... what does this error mean..... help me in solving this issue... Thanks in advance shivamasam (3 Replies)
Discussion started by: shivamasam
3 Replies

7. Programming

can any one answer ????

Q.1 Diffrence between terminal and pseudo-terminal ? Q.2 What is terminal login ? What is a netwok Login ? Q.3 What is meant by baud rate of a terminal ? Q.4 which structure is used for job control in Unix/Linux ?and where these structure are means in which directory ? (2 Replies)
Discussion started by: mobile01
2 Replies

8. UNIX for Dummies Questions & Answers

urgent answer these please

Hi, Please explain what does '$*' mean. what does the command cd /~abc do, especially what does '~' mean? cheers. (1 Reply)
Discussion started by: uni_ajay_r
1 Replies

9. Programming

get system() answer ?

Hi , how can i get the system reply from a system() command ? is it possible to evaluate the return of a system command ? (4 Replies)
Discussion started by: Sven28
4 Replies
Login or Register to Ask a Question