Bash-Linux.com : Le SHELL pour les nuls

  Actuellement 46 lignes de commande disponibles
login as: root
root@213.186.33.18's password:
Last login: Sun Aug 1 8:03:47 2010 from 38.107.191.102
[root@bash-linux ~] # echo "Bienvenue sur Bash-Linux.com"_
 Manuel des commandes UNIX (man) Version française

Indiquez la fonction :

Man Fopen en français

FOPEN(3) Manuel du programmeur Linux FOPEN(3)
 
NOM


fopen, fdopen, freopen - Fonctions d'ouverture de flux.
 
SYNOPSIS


#include FILE *fopen (const char *path, const char *mode); FILE *fdopen (int fildes, const char *mode); FILE *freopen (const char *path, const char *mode, FILE *stream);
 
DESCRIPTION


La fonction fopen() ouvre le fichier dont le nom est contenu dans la chaine pointee par path et lui associe un flux. L'argument mode pointe vers une chaine commencant par l'une des sequences suivantes (d'autres caracteres peuvent suivre la sequence) : r Ouvre le fichier en lecture. Le pointeur de flux est place au debut du fichier. r+ Ouvre le fichier en lecture et ecriture. Le pointeur de flux est place au debut du fichier. w Ouvre le fichier en ecriture. Le fichier est cree s'il n'exis- tait pas. S'il existait deja, sa longueur est ramenee a 0. Le pointeur de flux est place au debut du fichier. w+ Ouvre le fichier en lecture et ecriture. Le fichier est cree s'il n'existait pas. S'il existait deja, sa longueur est rame- nee a 0. Le pointeur de flux est place au debut du fichier. a Ouvre le fichier en ajout (ecriture a la fin du fichier). Le fichier est cree s'il n'existait pas. Le pointeur de flux est place a la fin du fichier. a+ Ouvre le fichier en lecture et ajout (ecriture en fin de fichier). Le fichier est cree s'il n'existait pas. La tete de lecture initiale du fichier est placee au debut du fichier mais la sortie est toujours ajoutee a la fin du fichier. La chaine mode peut egalement inclure la lettre b comme 3eme carac- tere, ou meme entre les deux caracteres d'une des sequences a 2 lettres vues ci-dessus. Ce mode sert uniquement a assurer la compatibilite avec C89 et n'a aucun effet. Le b est ignore sur tous les systemes compatibles POSIX, y compris Linux. (D'autres systemes peuvent traiter les fichiers de texte et les fichiers binaires differement, et l'ajout du b peut etre une bonne idee si vous faites des entrees-sorties binaires et que votre programme risque d'etre porte sur un environ- nement non-Unix). Tout fichier cree aura le mode S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH (0666), qui sera ensuite modifie par la valeur d'umask du processus. Voir umask(2). Les lectures et les ecritures peuvent etre melangees sur les flux en lecture et ecriture, dans un ordre quelconque, et sans besoin de posi- tionnement entre les entrees et les sorties, a moins qu'une lecture atteigne la fin du fichier. (Sinon sur certains systemes la lecture peut renvoyer les donnees provenant d'une ecriture autre que la derniere). Une bonne habitude consiste donc a intercaler un fseek() ou fgetpos() entre les lectures et les ecritures sur le meme flux. Ces operations peuvent etre visiblement sans effet comme fseek(..., 0L, SEEK_CUR) et ne servant que pour l'effet de bord de synchronisation. Ouvrir un fichier en mode ajout (a en premier caractere dans le mode) feront agir toutes les operations d'ecriture a la fin du flux, comme si elles etaient precedees par un appel fseek(stream,0,SEEK_END); systematique. La fonction fdopen() associe un flux avec un descripteur de fichier fildes existant. Le mode du flux ( r , "r+ , w , w+ , a , ou a+ ) doit etre compatible avec celui du descripteur de fichier. L'indicateur de position du nouveau flux prend la meme valeur que celui de fildes, et les indicateurs d'erreur et de fin-de-fichier sont effaces. Les modes w et w+ ne tronquent pas le fichier. Le descripteur n'est pas duplique par dup(2), et sera referme lorsque le flux cree par fdopen() sera referme. L'appel de fdopen() sur un objet en memoire partagee est indefini. La fonction freopen() ouvre le fichier dont le nom se trouve dans la chaine de caracteres pointee par path et lui associe le flux pointe par stream. Le flux original, s'il existe, est ferme. L'argument mode est utilise exactement comme avec fopen(). La principale utilisation de freopen() est de modifier le fichier associe aux flux standards de texte (stderr, stdin, ou stdout).
 
VALEUR RENVOYEE


Si elles reussissent integralement fopen(), fdopen() et freopen() ren- voient un pointeur sur un fichier, de type FILE. Sinon, elles ren- voient NULL et errno contient le code d'erreur.
 
ERREURS


EINVAL Le mode fourni a fopen(), fdopen(), ou freopen() etait invalide. Les fonctions fopen(), fdopen() et freopen() peuvent egalement echouer et positionner dans errno une des erreurs susceptibles de se produire avec malloc(3). La fonction fopen() peut aussi echouer et positionner dans errno une des erreurs susceptibles de se produire avec open(2). La fonction fdopen() peut aussi echouer et positionner dans errno une des erreurs susceptibles de se produire avec fcntl(2). La fonction freopen() peut aussi echouer et positionner dans errno une des erreurs susceptibles de se produire avec open(2), fclose(3) et fflush(3).
 
CONFORMITE


Les fonctions fopen() et freopen() sont conformes a C89. La fonction fdopen() est conforme a POSIX.1-1990.
 
EXTENSIONS GLIBC


La bibliotheque C GNU permet les extensions suivantes pour la chaine specifiee dans mode : c (depuis glibc 2.3.3) Ne pas effectuer l'operation d'ouverture, ou les operations de lecture et d'ecriture suivantes, point d'annulation de thread. m (depuis glibc 2.3) Essayer d'acceder au fichier avec mmap(2), plutot qu'avec les appels systeme d'entrees-sorties (read(2), write(2)). Actuelle- ment, l'utilisation de mmap(2) n'est tentee que pour un fichier ouvert en lecture. x Ouvrir le fichier de maniere exclusive (comme avec l'attribut O_EXCL de open(2)). Si le fichier existe deja, fopen() echoue et remplit errno avec EEXIST. Cet attribut est ignore par fdopen().
 
VOIR AUSSI


open(2), fclose(3), fileno(3).
 
TRADUCTION


Ce document est une traduction realisee par Christophe Blaess le 23 octobre 1996 et revisee le 14 aot 2006. L'equipe de traduction a fait le maximum pour realiser une adaptation francaise de qualite. La version anglaise la plus a jour de ce document est toujours consultable via la commande : LANG=C man 3 fopen . N'hesitez pas a signaler a l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel. LDP 4 mai 2006 FOPEN(3)


 Dernières recherches
Man  en anglais Man fopen en anglaisMan  en français Man fopen en français
Man  en anglais Man getuid en anglaisMan  en français Man getuid en français
Man  en anglais Man mq_setattr en anglaisMan  en français Man mq_setattr en français
Man  en anglais Man path_resolution en anglaisMan  en français Man path_resolution en français
Man  en anglais Man motd en anglaisMan  en français Man motd en français
Man  en anglais Man sigqueue en anglaisMan  en français Man sigqueue en français
Man  en anglais Man mq_unlink en anglaisMan  en français Man mq_unlink en français
Man  en anglais Man capabilities en anglaisMan  en français Man capabilities en français
Man  en anglais Man sshd_config en anglaisMan  en français Man sshd_config en français
Man  en anglais Man abort en anglaisMan  en français Man abort en français
Man  en anglais Man getrlimit en anglaisMan  en français Man getrlimit en français
Man  en anglais Man pstree en anglaisMan  en français Man pstree en français
Man  en anglais Man cron en anglaisMan  en français Man cron en français
Man  en anglais Man mkdir en anglaisMan  en français Man mkdir en français
Man  en anglais Man sprintf en anglaisMan  en français Man sprintf 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