Sponsored Content
Full Discussion: setenv.
Top Forums UNIX for Advanced & Expert Users setenv. Post 302265420 by Franklin52 on Sunday 7th of December 2008 07:16:03 AM
Old 12-07-2008
Use the popen function, this is an example to set a environment variable with a value fetched with a shell command:

Code:
#include <stdio.h>
#include <stdlib.h>

int main (int argc, char *argv[])
{
        FILE *pipein;
        char readbuf[80], Myvar[80];

        if ((pipein = popen("pwd", "r")) == NULL)

        {
                perror("popen");
                exit(1);
        }

        fgets(readbuf, 80, pipein);
        close(pipein);

        setenv(Myvar, readbuf, 1);

        printf("%s", getenv(Myvar));

        return(0);

}

Regards
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

setenv Question

I want to add paths to a CLASSPATH variable but if I use the : setenv CLASSPATH /opt all previous entries are erased. How do I append additional entries to a system variable without overwriting the original value. Thanx (3 Replies)
Discussion started by: ianf
3 Replies

2. UNIX for Dummies Questions & Answers

set, setenv

Well first of all I am a real Unix newbie. I am taking a course on it in University. I kind of understand set and setenv but, I think it si something that I should really understand. So I thought that I would try a forum out and see how good you guys really are. The question: Execute the... (1 Reply)
Discussion started by: w6u6f
1 Replies

3. Shell Programming and Scripting

What 's setenv?

Hi Is someone know about "setenv"? where can i find out this one? Regards Myoe (2 Replies)
Discussion started by: myoeminn
2 Replies

4. Shell Programming and Scripting

How do I set permanent setenv !!!

Hello, I just want to know ow I can set permanent pathes or whatever using setenv command. I'm using c shell . regards, me (1 Reply)
Discussion started by: geoquest
1 Replies

5. Shell Programming and Scripting

setenv in script

Is it possible to set environement variable in a script (for example, perl script) so that the variable will be set after exiting the script - in a father shell. (2 Replies)
Discussion started by: kosta_mirkin
2 Replies

6. UNIX for Dummies Questions & Answers

difference between EXPORT and setenv

Hi, Is there any difference between setting an environment variable by EXPORT and by setenv? (3 Replies)
Discussion started by: dexkid
3 Replies

7. Shell Programming and Scripting

setenv error

I am having the following environment setup script. $cat dbenv.sh #! /bin/csh # set history=32 stty sane setenv ORACLE_HOME=/dboracle/orabase/product/10.1.0.3 set ORACLE_BASE=/dboracle/orabase set... (2 Replies)
Discussion started by: rahulrathod
2 Replies

8. UNIX for Dummies Questions & Answers

whats setenv in unix

Hi whats the setenv command in unix..?? i have set the oracle_home path as aa.ii.1 in kron_settings and mentioned setenv oracle_path as aa.ii.2 in user settings. Does this make any changes made to the path name of the oracle_home when i run a scripts in unix..???:( (1 Reply)
Discussion started by: abhi_123
1 Replies

9. Solaris

setenv: cannot add the LD_LIBRARY_PATH

Hi all! I need to add new environment variable. e.g. # setenv LD_LIBRARY_PATH "/usr/ucblib:" # I check:# env LD_LIBRARY_PATH=/usr/ucblib: After rebooting I don't see this variable. Why don't save this variable? Thanks. (5 Replies)
Discussion started by: wolfgang
5 Replies

10. Shell Programming and Scripting

Cshell setenv: Too many arguments.

i have in c-shell set value_str ="one three" set line_seprator = "," set value_and_sperator = "$value_str$line_seprator" setenv STRING_CONCAT $STRING_CONCAT$value_and_sperator and im getting error: setenv: Too many arguments. this is... (1 Reply)
Discussion started by: umen
1 Replies
popen(3)						     Library Functions Manual							  popen(3)

Name
       popen, pclose - initiate I/O to/from a process

Syntax
       #include <stdio.h>

       FILE *popen(command, type)
       char *command, *type;

       pclose(stream)
       FILE *stream;

Description
       The arguments to are pointers to null-terminated strings containing respectively a shell command line and an I/O mode, either "r" for read-
       ing or "w" for writing.	It creates a pipe between the calling process and the command to be executed.  The  value  returned  is  a  stream
       pointer that can be used (as appropriate) to write to the standard input of the command or read from its standard output.

       A stream opened by should be closed by which waits for the associated process to terminate and returns the exit status of the command.

       Because open files are shared, a type "r" command may be used as an input filter, and a type "w" as an output filter.

Diagnostics
       The routine returns a null pointer if files or processes cannot be created, or the shell cannot be accessed.

       The routine returns -1 if stream is not associated with a `popened' command.

Restrictions
       Buffered reading before opening an input filter may leave the standard input of that filter mispositioned.  Similar problems with an output
       filter may be forestalled by careful buffer flushing, for instance, with For further information, see

       The routine always calls and never calls

See Also
       sh(1), pipe(2), wait(2), system(3), fclose(3s), fopen(3s)

																	  popen(3)
All times are GMT -4. The time now is 11:13 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy