vimscript - vim supprime ou remplace une section entière
ringa_lee
ringa_lee 2017-05-16 16:41:00
0
5
816

Il y a un texte comme celui-ci

As of initscripts-2012.07.5, the default format of /etc/rc.conf and
/etc/crypttab have changed. See their respective man pages for 
more details.

--BEGIN--
The purpose of this change is to unify the configuration of systemd
and initscripts. This will allow us to share code and documentation, 
and should make maintenance of initscripts simpler in the long-run.
--END--

The old format is still supported, so old config files should still
work unchanged.

J'espère pouvoir supprimer toutes les lignes entre --BEGIN-- --END-- Existe-t-il une méthode directe dans vim ?

.

Une autre question supplémentaire est de savoir comment ajouter un élément de contenu alors qu'il y a déjà une marque
--BEGIN--.

Ceux ci-dessus espèrent tous traiter les fichiers texte de manière scriptée.


Juste un exemple, le nombre de lignes entre --BEGIN--, --END-- est incertain
Le marquer manuellement est un peu laborieux. Le fichier lui-même n'est pas petit et a une structure similaire
. Plus.

ringa_lee
ringa_lee

ringa_lee

répondre à tous(5)
左手右手慢动作

:g/--BEGIN--/,/--END--/d
如果要同时删除前后的空行
:g/--BEGIN--/-1,/--END--/+1d

刘奇

vim peut le faire,

En mode commande :

%s/--BEGIN--\_.*--END--//g

Le _ est la clé, cela peut correspondre à plusieurs lignes.
Il existe déjà un moyen de remplacer le logo --BEGIN--. Cela peut également être fait en utilisant l'idée de remplacement ci-dessus
. :%s/^--BEGIN--/&Contenu à remplacer/g

Ty80

Déplacez le curseur au début
Esc v pour passer en mode affichage
j Faites défiler vers le bas pour sélectionner la partie opérationnelle
d Supprimer x Couper Les deux sont OK

phpcn_u1582

Puisque vous voulez le scripter, utilisez simplement sed :

sed -i '/--BEGIN--/,/--END--/d' files_to_modify
淡淡烟草味

ndd, n est le nombre de lignes à supprimer.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal