GNU/Linux >> Tutoriels Linux >  >> Linux

Sortie à enregistrer dans un fichier portant le même nom que le fichier d'entrée ?

Cette question a déjà des réponses ici :Modifier un fichier sans en créer un autre [dupliquer]

(6 réponses)
Fermé il y a 6 ans.

J'ai un fichier d'entrée et j'exécute une commande, mais je souhaite que la sortie soit enregistrée avec le même nom que le fichier d'entrée.

J'ai essayé la commande ci-dessous mais cela rend le fichier de sortie vide :

cat file1 | grep "YISHA" > file1

Réponse acceptée :

Sur le système GNU, vous pouvez utiliser sed (l'implémentation GNU) :

sed -i -n '/YISHA/p' file1

L'équivalent FreeBSD ou OS/X :

sed -i '' -n '/YISHA/p' file1

ou à l'aide d'une sponge de moreutils :

grep "YISHA" file1 | sponge file1

Linux
  1. Comment faire pour que Iconv remplace le fichier d'entrée par la sortie convertie ?

  2. Comment obtenir l'entrée et la sortie d'un terminal dans un fichier texte ? ?

  3. diff pour afficher uniquement les noms de fichiers

  4. Comment rediriger stderr et stdout vers différents fichiers dans la même ligne de script ?

  5. trouver :boucle du système de fichiers détectée

Shell Scripting Part4 - Entrée, sortie et redirection

Enregistrer la sortie d'une commande du terminal Debian dans un fichier

afficher la 2ème colonne d'un fichier

Comment rediriger la sortie de system() vers un fichier ?

Comment rediriger la sortie du programme comme son entrée

Comment compter le nombre d'octets dans un fichier, regroupant les mêmes octets ?