Si vous souhaitez stocker les modifications de sed
retour au fichier utiliser le -i
choix :
$ cat file
<head>abc</head>
<td>hello</td>
<td>hello</td>
<td>hello</td>
<td>abc</td>
<td>abc</td>
<h1>abc</h1>
$ sed -ni '/<td>/{s/^\s*//;s/abc//;s/<\/\?td>//g;p}' file
$ cat file
hello
hello
hello
Modifier : L'expression rationnelle est plus claire si nous utilisons un séparateur différent avec sed
et utilisez l'option d'expression régulière étendue -r
:
$ sed -r 's_</?td>__g' file
hello
hello
hello
abc
abc
Le ?
rendre le caractère précédent optionnel donc le /
n'a pas besoin d'être présent pour que l'expression rationnelle corresponde à <td>
et </td>
dans une.
Dans la commande sed Utilisez l'option -i pour modifier le fichier lui-même , sinon, la sortie s'imprime à l'écran mais le fichier reste le même.
La formule serait :
sed -i <targetFile> 's/<beforeText>/<afterText>/g' <targetFile>
Par exemple :
sed -i myCredentials.txt 's/secretPassword/xxx/g' myCredentials.txt
Une autre option - sortie vers un autre fichier et renommez-le :
sed 's/secretPassword/xxx/g' myCredentials.txt > temp.txt
rm myCredentials.txt && mv temp.txt myCredentials.txt
pour plus d'informations, consultez la documentation :
L'utilitaire sed lit les fichiers spécifiés, ou l'entrée standard si aucun fichier n'est spécifié, en modifiant l'entrée comme spécifié par une liste de commandes . L'entrée est ensuite écrite sur la sortie standard. Une seule commande peut être spécifiée comme premier argument de sed. Plusieurs commandes peuvent être spécifiées à l'aide des options -e ou -f. Toutes les commandes sont appliquées à l'entrée dans l'ordre dans lequel elles sont spécifiées, quelle que soit leur origine.
-i Modifier les fichiers sur place , enregistrant les sauvegardes avec l'extension spécifiée. Si une extension de longueur nulle est donnée, aucune sauvegarde ne sera enregistrée. Il n'est pas recommandé de donner une extension de longueur nulle lors de l'édition sur place de fichiers, car vous risquez de corrompre ou d'avoir un contenu partiel dans des situations où l'espace disque est épuisé, etc.