Forum Linux.débutant écrire dans un fichier texte en mode commande

Posté par  .
Étiquettes : aucune
0
21
sept.
2006
Bonjour,


Je cherche à écrire dans un fichier texte sans passer par un logiciel genre gedit ou kate. L'idée c'est d'écrire un premier texte dans ce fichier, puis un deuxième texte dans le meme fichier mais à la suite du premier texte, sans effacer ce qui a été écris avant, et ainsi de suite...

Quelle commande permet de faire ça ? Merci.


Rénald.
  • # écrire dans un fichier texte en mode commande

    Posté par  . Évalué à 4.

    Rien de plus simple. Dans un shell, tu peux rediriger la sortie de n'importe quelle commande dans un fichier. En particulier le résultat de la commande "echo", qui ne fait qu'afficher sur sa sortie standard le texte passé en paramètre.

    Exemple :

    echo "coucou" > fichier.txt

    C'est le ">" qui fait la redirection. Si le fichier n'existe pas, il est crée.

    Pour ajouter le texte, il faut deux fois le caractère ">" :

    echo "c'est moi" >> fichier.txt

    Avec un seul ">", le fichier est réécris à 0.

    D'ailleurs, pour vider un fichier, on peut simplement taper ceci :

    > fichier.txt

    Sans rien devant.
    • [^] # Re: écrire dans un fichier texte en mode commande

      Posté par  . Évalué à 2.

      On peut ajouter que s'il a beaucoup de chose ecrire une meilleur methode serais

      Ecrire dans le fichier file.txt , le creer s'il n'existe pas , remplacer son contenue s'il existe. Le script ce termine avec eof enter sur la dernier ligne

      cat > file.txt << eof
      mon blabla
      etc....
      eof

      Pour rajouter a la fin du fichier

      cat >> file.txt << eof

      Allez tous vous faire spéculer.

    • [^] # Re: écrire dans un fichier texte en mode commande

      Posté par  . Évalué à 1.

      Merci, c'est exactement ce que je cherchai. Je connaissait la redirection avec le signe >, mais pas la concaténation >>. Ca va drollement me simplifier la vie.

      Rénald.
  • # Beh

    Posté par  (site web personnel) . Évalué à 3.

    tu prends vi ou vim. Ca marche en console, et tu peux ecrire du texte, et tu peux même en réecrire sans perdre le précédent...

    Une fois vi ouvert (ex. vi plop.txt), tu tappes [echap] + i, tu saisis ton texte, puis tu fais, [echap] + : + w + [enter] pour sauver, puis [echap] + : + q + [enter] pour quitter. Super fastoche non ? :)
    • [^] # Re: Beh

      Posté par  (site web personnel) . Évalué à 2.

      Pour un débutant, je conseillerai plutôt un truc simple comme nano (à installer, il n'est pas forcément présent de base, comme vi ou emacs). Parce que ce soit emacs ou vi, y en a pour 3 plombes à comprendre comment ça fonctionne.
  • # ed est ton ami essaye :P

    Posté par  . Évalué à 2.

    donc a part ed, il y a emacs :P
    emacs nomdufichier
    ou emacs-nox nomdufichier
    ou encore emacs -nw nomdufichier
    tu tappes ton text
    et ctrl-x ctrl-s pour sauver
    ctrl-x ctrl-c pour quitter :P

    et ne crois pas ceux qui disent que vi c'est mieux y a qu'emacs qui rulez :P

    ps : je cherche mon appeau a troll ;)

    Il ne faut pas décorner les boeufs avant d'avoir semé le vent

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.