Fichiers sous unix

asma -  
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   -
Bonjour,
je veux savoir comment stocker un resultat (chaîne des caracteres)d'une fonction dans un fichier de sortie sous unix,aussi comment créer un fichier commun à un ensemble des processus et chaque processus écrit son propre résultat dans ce fichier
merci d'avance.

2 réponses

Franzux Messages postés 8907 Date d'inscription   Statut Contributeur Dernière intervention   1 145
 
En ligne de commande, tu as l'opérateur ">" qui te permet d'écrire dans un fichier. Pour ne pas effacer ce qu'il y avait dans ce fichier, tu devras utiliser ">>".

Exemple :

franz@elenium:~$ ls > toto.txt


Va stocker le résultat de la commande ls dans un fichier toto.txt. Le seul problème est que si le fichier existe déjà, son contenu sera effacé pour être remplacé par le résultat de ls. Pour éviter cela, la solution est :


franz@elenium:~$ ls >> toto.txt


Dans ce cas, le résultat de la commande ls va être envoyé à la fin du fichier toto.txt, sans altérer ce qui s'y trouvait déjà. Bien entendu, j'ai pris ls car c'est, à mon sens, l'exemple le plus simple et concret, mais tu peux faire cela avec n'importe quelle commande.

Éspérant avoir répondu à ta question,

Cordialement.

Franz.
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Salut,

mais tu peux faire cela avec n'importe quelle commande

je me permets de continuer cette phrase ;-)

certaines commandes n'affiche pas par défaut la sortie sur STDOUT(par exemple cp, chmod, etc.)
pour les commandes qui n'affiche pas par défaut le résultat à l'écran (STDOUT) il faut voir si l'option -v ou --verbose existe
cette option permettra de voir à l'écran ce que la commande fait et aussi de capturer le résultat si on a besoin
0