Partage
  • Partager sur Facebook
  • Partager sur Twitter

Modifier le contenu d'un fichier en commande

Sujet résolu
    14 septembre 2020 à 12:06:53

    Bonjour,

    je souhaiterai modifier le contenu d'un fichier avec la commande. Par exemple mettre toutes les lettres en minuscule.

    J'ai essayé avec tr mais cela fonctionne uniquement quand on affiche le texte dans la commande mais cela ne modifie pas le contenu di fichier

    Quel autre commande puis utiliser ? 

    • Partager sur Facebook
    • Partager sur Twitter
      14 septembre 2020 à 13:08:00

      Bonjour !

      Une idée : compléter la commande avec une redirection > sur le fichier de départ. Quelque chose comme :

      tr nom_fichier -options > nom_fichier

      Mais je n'ai pas essayé.

      • Partager sur Facebook
      • Partager sur Twitter
        14 septembre 2020 à 13:40:03

        Nope ca ne fonctionne pas... On ne peut pas intégrer de nom de fichier avec tr 

        tr prend l'entrée standard fais son opération et envoie le résultat sur la sortie standard (soit la console)

        • Partager sur Facebook
        • Partager sur Twitter
          14 septembre 2020 à 14:55:22

          Essaye tr '[:upper:]' '[:lower:]' < fichier > sortie

          • Partager sur Facebook
          • Partager sur Twitter

          git is great because Linus did it, mercurial is better because he didn't.

            14 septembre 2020 à 15:00:06

            en prenant soin de donner un nom différent au fichier de sortie, parce que la redirection est effectuée avant la commande; au risque d'écraser le fichier original.
            • Partager sur Facebook
            • Partager sur Twitter

            Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique

              14 septembre 2020 à 15:18:13

              Toujours pas... :/ Oui j'ai pris soin de donner un nom différent au fichier de sortie mais à vrai dire cela m'aurait dérangé si le fichier d'origine aurait été écrasé
              • Partager sur Facebook
              • Partager sur Twitter
                14 septembre 2020 à 16:00:49

                tiens !? tr ne prend pas de nom de fichier en argument !

                il faut indiquer une redirection du fichier en entrée :

                < nom_fichier tr '[:upper:]' '[:lower:]'

                pour voir le résultat.

                et pour indiquer un fichier de sortie :

                tr '[:upper:]' '[:lower:]' <nom_fichier >fichier_sortie

                ensuite, si nécessaire, un mv pour remplacer le fichier original.

                -
                Edité par dantonq 14 septembre 2020 à 16:02:12

                • Partager sur Facebook
                • Partager sur Twitter

                Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique

                Modifier le contenu d'un fichier en commande

                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                • Editeur
                • Markdown