J'essayais sed
de remplacer certains mots clés dans un gros fichier (100 Mo). Je n'étais pas au courant de l' -i
option (sur place), donc ma première tentative a été de rediriger comme ceci:
sed 's/original/edited/g' file.log >> file.log
ce qui s'est passé ensuite, c'est que mon PC s'est arrêté, presque pas de saisie clavier. J'ai essayé une autre console Ctrl+ Alt+ F1mais après avoir lentement entré le nom d'utilisateur, elle s'est également arrêtée. Sans clavier, ma seule option était de réinitialiser le matériel de la machine. Après la connexion, j'ai vu que file.log était d'environ 8 Go.
Je voudrais vraiment comprendre pourquoi l'exécution de cette commande a pu rendre le système si insensible, et si des mécanismes existent au niveau du système pour déclencher des alertes et tuer le processus incriminé?
free -h
?
ex -sc '%s/original/edited/ge|x' file.log
devrait faire ce que vous voulez d'une manière idiomatique UNIX sans les sed -i
effets secondaires.