détails d'utilisation de sed

巴扎黑
巴扎黑original
2017-06-23 14:34:011771parcourir

Utilisation de sed

1, remplacez les symboles :

sed -e 's#/#-#g' -e's#:#-#g' passwd

2, utilisez la commande d'entrée du fichier sed :

vim 123.sed
s#:#/#g
s#/#-#g
sed -f 123.sed passwd

3, imprimez :

sed -n 2p passwd

4, remplacez la nième correspondance :

sed 's/in/AAAAA/2' passwd
root:x:0:0:root:/root:/bin/bashbin:x:1:1:bAAAAA:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbAAAAA/nologin

Remarque : Ce n'est que lorsque in correspond pour la deuxième fois dans chaque ligne qu'il sera remplacé par AAAAA

5, remplacez la mième correspondance de la nième ligne :

sed '2s/in/AAAAA/2' passwd
root:x:0:0:root:/root:/bin/bashbin:x:1:1:bAAAAA:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologin

Remarque : Vous pouvez utiliser la combinaison -n -p

sed -n '2s/in/AAAAA/2p' passwd 
bin:x:1:1:bAAAAA:/bin:/sbin/nologin
sed -n '2,3s/in/AAAAA/2p' passwd
bin:x:1:1:bAAAAA:/bAAAAA:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbAAAAA/nologin
sed -n '2,$s/in/AAAAA/2p' passwd

Remarque : Vous pouvez utiliser $ pour indiquer la fin

6, enregistrez le résultat du remplacement dans le fichier :

sed -n '2s/in/AAAAA/2pw passwd.sed' passwd 
bin:x:1:1:bAAAAA:/bin:/sbin/nologin
cat passwd.sed 
bin:x:1:1:bAAAAA:/bin:/sbin/nologin

7, sauvegardez le résultat du remplacement , et modifiez le fichier source :

sed -i.bak '2s/in/AAAAA/2' passwd
cat -n  passwd1	root:x:0:0:root:/root:/bin/bash2	bin:x:1:1:bAAAAA:/bin:/sbin/nologin
ls passwd*passwd  passwd.bak

8, modification conditionnelle du filtre :

sed -n '/root/s/bin/AAAAA/p' passwd
root:x:0:0:root:/root:/AAAAA/bashoperator:x:11:0:operator:/root:/sAAAAA/nologin

9, exécution multi-commandes sed :

sed  '1{s/root/ROOT/s/bin/BIN/
}' passwd
ROOT:x:0:0:root:/root:/BIN/bash
sed -n -e '1s/root/ROOT/' -e '1s/bin/BIN/' -e 1p passwd
ROOT:x:0:0:root:/root:/BIN/bash

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn