Bash-Linux.com : Le SHELL pour les nuls

  Actuellement 50 lignes de commande et 1472 man disponibles
login as: root
root@213.186.33.18's password:
Last login: Wed May 30 4:31:32 2012 from 38.107.179.227
[root@bash-linux ~] # echo "Bienvenue sur Bash-Linux.com"_
 Manuel des commandes UNIX (man) Version anglaise

Indiquez la fonction :

Man Pclose en anglais

POPEN(3) Linux Programmer's Manual POPEN(3)
 
NAME


popen, pclose - process I/O
 
SYNOPSIS


#include FILE *popen(const char *command, const char *type); int pclose(FILE *stream);
 
DESCRIPTION


The popen() function opens a process by creating a pipe, forking, and invoking the shell. Since a pipe is by definition unidirectional, the type argument may specify only reading or writing, not both; the resulting stream is correspondingly read-only or write-only. The command argument is a pointer to a null-terminated string contain- ing a shell command line. This command is passed to /bin/sh using the -c flag; interpretation, if any, is performed by the shell. The type argument is a pointer to a null-terminated string which must be either "r" for reading or "w" for writing. The return value from popen() is a normal standard I/O stream in all respects save that it must be closed with pclose() rather than fclose(3). Writing to such a stream writes to the standard input of the command; the command's standard output is the same as that of the process that called popen(), unless this is altered by the command itself. Conversely, reading from a "popened" stream reads the com- mand's standard output, and the command's standard input is the same as that of the process that called popen(). Note that output popen() streams are fully buffered by default. The pclose() function waits for the associated process to terminate and returns the exit status of the command as returned by wait4(2).
 
RETURN VALUE


The popen() function returns NULL if the fork(2) or pipe(2) calls fail, or if it cannot allocate memory. The pclose() function returns -1 if wait4(2) returns an error, or some other error is detected.
 
ERRORS


The popen() function does not set errno if memory allocation fails. If the underlying fork(2) or pipe(2) fails, errno is set appropriately. If the type argument is invalid, and this condition is detected, errno is set to EINVAL. If pclose() cannot obtain the child status, errno is set to ECHILD.
 
CONFORMING TO


POSIX.1-2001.
 
BUGS


Since the standard input of a command opened for reading shares its seek offset with the process that called popen(), if the original pro- cess has done a buffered read, the command's input position may not be as expected. Similarly, the output from a command opened for writing may become intermingled with that of the original process. The latter can be avoided by calling fflush(3) before popen(). Failure to execute the shell is indistinguishable from the shell's failure to execute command, or an immediate exit of the command. The only hint is an exit status of 127.
 
SEE ALSO


sh(1), fork(2), pipe(2), wait4(2), fclose(3), fflush(3), fopen(3), stdio(3), system(3)
 
COLOPHON


This page is part of release 3.05 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/. GNU 1998-05-07 POPEN(3)


 Dernières recherches
Man  en anglais Man pclose en anglaisMan  en français Man pclose en français
Man  en anglais Man pcilib en anglaisMan  en français Man pcilib en français
Man  en anglais Man pciconfig_write en anglaisMan  en français Man pciconfig_write en français
Man  en anglais Man pciconfig_read en anglaisMan  en français Man pciconfig_read en français
Man  en anglais Man pciconfig_iobase en anglaisMan  en français Man pciconfig_iobase en français
Man  en anglais Man patch en anglaisMan  en français Man patch en français
Man  en anglais Man paste en anglaisMan  en français Man paste en français
Man  en anglais Man pam en anglaisMan  en français Man pam en français
Man  en anglais Man oqmgr en anglaisMan  en français Man oqmgr en français
Man  en anglais Man operator en anglaisMan  en français Man operator en français
Man  en anglais Man openvt en anglaisMan  en français Man openvt en français
Man  en anglais Man openssl en anglaisMan  en français Man openssl en français
Man  en anglais Man openpty en anglaisMan  en français Man openpty en français
Man  en anglais Man openat en anglaisMan  en français Man openat en français
Man  en anglais Man on_exit en anglaisMan  en français Man on_exit en français

 Recherche

Dans ce moteur de recherche, vous pouvez taper directement votre besoin, en une phrase normale, humaine.
Exemple : vous cherchez comment remplacer un mot par un autre dans tous les fichiers d'un certain dossier. Vous pouvez écrire "Comment remplacer un mot par un autre dans tous les fichiers d'un dossier". Le moteur vous ramenera les résultats en fonction de leur pertinence.
Vous pouvez bien sûr ne chercher qu'un seul mot-clé, par exemple "find".
 Toutes les lignes de code
Par popularité
Par fonction
Recherche avancée
 Les logiciels SHELL/SSH
Putty
Astuces Bash
Faire du SHELL avec PHP!
 La doc officielle
Les man Linux en français
Les man Linux en anglais
 Proposer vos bash
Partagez vos lignes!
 Les requêtes
Déposer une requête
Voir/répondre à une requête
 Quelques sites interessants
Bons sites pour apprendre
 Rechercher