[shell] commande pour ajouter un message

Résolu/Fermé
binouchette - Modifié par mamiemando le 6/05/2011 à 15:06
 binouchette - 7 mai 2011 à 11:47
Bonjour, et merci pour votre aide et d'avoir pris le temps de lire mon petit (pour moi c'est grand) probleme

je suis sous ubunto et dans un fichier j'ai utiliser la commande "touch" pour creer un autre fichier vide, et maintenant je cherche a ajouter du texte ou des instructions a ce nouveau fichier..... sans avoir a utilser le shell (vim ou vi....)

est ce que vous avez une idéee
merci
A voir également:

3 réponses

mamiemando Messages postés 33588 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 19 mars 2025 7 833
Modifié par mamiemando le 6/05/2011 à 14:50
Ben si justement, en utilisant une commande shell et sans utiliser un éditeur texte je suppose !

Tu n'as même pas besoin de touch dans ce cas.

echo "coucou" > /tmp/toto.txt 
echo "coucou1" >> /tmp/toto.txt 
echo "coucou2" >> /tmp/toto.txt 
echo "coucou3" >> /tmp/toto.txt


En toute rigueur il faudrait même écrire :

echo "coucou" 1> /tmp/toto.txt 
echo "coucou1" 1>> /tmp/toto.txt 
echo "coucou2" 1>> /tmp/toto.txt 
echo "coucou3" 1>> /tmp/toto.txt


> (1>) écrit dans un fichier (à la place s'il existe, crée le fichier s'il n'existe pas).
>> (1>>) écrit à la suite dans un fichier (crée le fichier s'il n'existe pas).

Un processus écrit
- sur la sortie standard (/dev/stdout), que tu récupères dans /tmp/toto.txt grâce à 1> ou 1>> ;
- sur la sortie d'erreur standard (/dev/stderr), que tu récupères dans /tmp/toto.txt grâce à 2> ou 2>> ;

Ainsi on pourrait imaginer la commande suivante (~ désigne ton home directory, par exemple /home/toto) :

find /etc 1> ~/out.txt 2> ~/err.txt


Si tu regardes out.txt et err.txt tu verras dans l'un le résultat et dans l'autre les erreurs.

Plus d'informations ici :
https://forums.commentcamarche.net/forum/affich-21941701-stdin-et-stdout#p22026880

Bonne chance
2
merci, mais est ce que vous pouvez allez doucement, je suis nouvelle sous unix, a vrai dire c'est mes premiers instruction bon pas vraimment les premieres mais.......

echo "coucou" > /tmp/toto.txt
c'est que je doit creer un fichier toto.txt puis lui lui ajouter coucou avec cette instruction c'est ca??
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 422
6 mai 2011 à 14:57
Si le fichier n'existe pas il sera créé avec "coucou" comme contenu, sinon ça écrasera le contenu et le remplacera par "coucou".
0
merci , je vais l'aissyé , et je vous frai signe
une dernier question, pour l'instruction sed -e j'ai lu quelle permettait de remplacer des phrases par des autres,
sed [adresse] commande\
expression

La commande peut être :
a pour ajout ;
i pour insertion ;
c pour modification.
est ce que vous pouvez me donner un exemple, et pour l'adresse si mes deux fichiers son dans le meme repertoire, je vais pas la specifier
0
mamiemando Messages postés 33588 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 19 mars 2025 7 833
6 mai 2011 à 15:05
Merci zipe31 pour avoir précisé mon propos.

Essaye de toute façon, tant que tu ne fais pas de sudo et que tu travailles dans /tmp, tu ne peux pas faire de grosses bêtises.

Les opérateurs 1>, 1>>, 2>, 2>> (>, >>) créent le fichier s'il n'existe pas (et si tu as le droit de le créer). Tous ces opérateurs modifient potentiellement le contenu du fichier passé à droite de l'opérateur.
- Les opérateurs > 1> 2> écrase le fichier s'il existait déjà,
- Les opérateurs >> 1>> 2>> écrive à la suite du fichier s'il existait déjà.

Bonne chance
0
resalut
merci ca marche a merveille saufe quand je cree un fichier avec un script qui contient les caracteres $i il ne me copie pas le caractere $ je ne sais pas pourquoi ??
est ce que vous avez une idée???
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 422
6 mai 2011 à 14:49
Salut,

echo "Bonjour" > fichier
echo "Ça va ?" >> fichier
echo -e "Bonjour,\n\nÇa va?" > fichier2

1
fichier c'est le nom du nouveau fichier que je cree avec touch c'est ca??
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 422
6 mai 2011 à 14:54
Oui.

Mais jette un oeil à l'explication de mamiemando ci-dessous c'est beaucoup plus développé et instructif que ma réponse ;-))
0
yunalesqua Messages postés 28 Date d'inscription vendredi 23 juillet 2010 Statut Membre Dernière intervention 26 février 2014 7
6 mai 2011 à 14:45
Je comprend pas vraiment le problème mais je pense que tu veux utiliser un éditeur de texte pour pouvoir éditer le fichier que tu viens de créer.


au quel cas tu fait

touch toto //creer le fichier
gedit toto //edite le fichier avec gedit
0
pour touch toto; il va me cree un fichier toto
et moi je veux ecrire par exemple dans le fichiet toto , echo "toto est malade",
sans avoir a ouvire le fichier est faire les insertions des instruction..
vous m'avez compris?
0