8 Astuces et astuces «VI / VIM» intéressantes pour chaque administrateur Linux - Partie 2

8 Astuces et astuces «VI / VIM» intéressantes pour chaque administrateur Linux - Partie 2

Dans l'article précédent de cette série, nous avons passé en revue 7 conseils et astuces à ajouter à votre ensemble de compétences VI / M. Outre les raisons présentées précédemment, apprendre à utiliser efficacement un éditeur de texte dans Linux dans une capacité essentielle pour un administrateur ou un ingénieur système et est une compétence requise pour transmettre tout programme de certification Linux majeur (tel que LFCS, LFCE, RHCSA et RHCE).

8 Astuces et astuces «VI / VIM» intéressantes - Partie 2

Cela dit, commençons.

Astuce n ° 8: Créez des fenêtres horizontales ou verticales

Cette astuce a été partagée par Yoander, Un de nos lecteurs, dans la partie 1. Vous pouvez lancer VI / M avec plusieurs divisions horizontales ou verticales pour modifier des fichiers séparés dans la même fenêtre principale:

Lancez VI / M avec deux fenêtres horizontales, avec test1 en haut et test2 au fond

# vim -o test1 test2 
Lancez l'éditeur VIM dans les fenêtres horizontales

Lancez VI / M avec deux fenêtres verticales, avec test3 à gauche et test4 sur la droite:

# vim -o test3 test4 
Lancez l'éditeur VIM dans les fenêtres verticales

Vous pouvez changer le curseur d'une fenêtre à une autre avec la routine de mouvement VI / M habituelle (H: droite, L: gauche, J: bas, K: haut):

  1. Ctrl + w k - haut
  2. Ctrl + W J - bas
  3. Ctrl + w l - gauche
  4. Ctrl + w h - droite

Astuce n ° 9: Modifiez les lettres, les mots ou les lignes entières en majuscules ou en minuscules

Veuillez noter que cette astuce fonctionne uniquement dans VIM. Dans les exemples suivants, X est un numéro entier.

  1. Pour changer une série de lettres en majuscules, positionnez le curseur sur la première lettre, puis tapez gux dans ex mode et enfin appuyez sur la flèche droite du clavier.
  2. Pour changer x nombre de mots, placez le curseur au début du mot et tapez guxw dans ex mode.
  3. Pour changer une ligne entière en majuscules, placez le curseur n'importe où sur la ligne et tapez Guu dans ex mode.

Par exemple, pour convertir un tout minuscule se mettre en ligne majuscule, vous devez placer le curseur n'importe où sur la ligne et taper Guu:

Changer la chaîne en majuscules dans l'éditeur VIM

Par exemple, pour convertir 2 majuscules des mots minuscule, Vous devez placer le curseur au début du premier mot et taper GU2W:

Convertir la corde en minuscules dans l'éditeur VIM

Astuce n ° 10: Supprimer les caractères, les mots ou au début d'une ligne en mode insert

Tandis que vous pouvez supprimer des caractères ou plusieurs mots à la fois ex mode (i.e. dwing Pour supprimer un mot), vous pouvez également le faire en mode insertion comme suit:

  1. Ctrl + h: supprimez le caractère précédent à l'endroit où le curseur est actuellement situé.
  2. Ctrl + w: Supprimer le mot précédent à l'endroit où se trouve actuellement le curseur. Pour que cela fonctionne correctement, le curseur doit être placé dans un espace vide après le mot que vous devez supprimer.
  3. Ctrl + u: supprimez la ligne actuelle commençant immédiatement au personnage à gauche de l'endroit où se trouve le curseur.

Astuce n ° 11: Déplacez ou copiez les lignes existantes vers une autre ligne du document

S'il est vrai que vous pouvez utiliser les commandes DD, YY et P bien connues en mode EX pour supprimer, yank (copier) et coller des lignes, respectivement, qui ne fonctionne que lorsque le curseur est placé où vous souhaitez effectuer ces opérations. La bonne nouvelle est qu'avec le copie et déplacer Commandes Vous pouvez faire la même chose, quel que soit l'endroit où le curseur est actuellement placé.

Pour l'exemple suivant, nous utiliserons un court poème intitulé «Pour toujours" par Terri Nicole Tharrington. Pour commencer, nous aurons VIM afficher les numéros de ligne (: Réglez NU en mode commande - considérez ceci comme un astuce supplémentaire). Nous utiliserons : 3Copy5 (également en mode commande) pour copier la ligne 3 en dessous de la ligne 5:

Déplacer la copie des lignes existantes dans VIM

Maintenant, annulez le dernier changement (ESC + U - Un autre conseil bonus!) et taper : 1Move7 Pour remplacer la ligne 7 par la ligne 1. Veuillez noter comment les lignes 2 à 7 sont décalées et l'ancienne ligne 1 occupe désormais la ligne 7:

Déplacer les lignes dans l'éditeur VIM

Astuce n ° 12: les correspondances de nombre résultant d'une recherche par modèle et passent d'un occurrence à un autre

Cette astuce est basée sur la commande de substitut (astuce #7 dans Partie 1 de cette série), à ​​l'exception qu'il ne supprimera rien car le comportement de substitution est remplacé par le n Option, entraînant le nombre d'occurrences du modèle spécifié:

Assurez-vous que vous n'omettez aucune des barres obligées!

:% s / motif // gn 

Par exemple,

:% s / libéro // gn 
Compter les correspondances par modèle de recherche dans VIM

Pour passer d'une occurrence du motif à la suivante ex Mode, appuyez sur n (minuscules n). Pour passer à l'instance précédente, appuyez sur N.

Astuce n ° 13: Ouvrez directement VI / M dans une ligne spécifiée

Par défaut, lorsque vous lancez VI / M, le curseur est initialement placé dans la dernière ligne qui a été modifiée. Si vous souhaitez ouvrir le programme et que le curseur soit directement placé sur une ligne spécifiée, vous pouvez utiliser l'astuce suivante:

# vim nom de fichier + line_number 

Par exemple, ouvert pour toujours.SMS et placer le curseur en ligne 6:

# vim pour toujours.txt +6 

Ajusterons un peu cet exemple. Supposons que nous voulons ouvrir le fichier sur la ligne où la troisième occurrence du modèle apparaît:

# vim nom de fichier + $ (nom de fichier de modèle grep -in | SED -N 3P | Cut -D: -F1) 

Examinons de plus près ce que fait la commande ci-dessus:

  1. nom de fichier grep -in - Affiche toutes les lignes du nom de fichier où se produit le modèle, avec le numéro de ligne au début de chaque ligne de sortie.
  2. SED -N 3P - Affiche la 3e ligne de la sortie du pipeline précédent.

Enfin,

  1. coupe -d: -f1 Renvoie le premier champ du pipeline précédent avec le côlon (:) est le séparateur de champ.
# grep -in pour toujours pour toujours.txt # grep -in pour toujours.txt | sed -n 3p # grep -in pour toujours.txt | SED -N 3P | coupe -d: -f1 
Ouvrir l'éditeur VIM dans la ligne spécifiée

Le résultat de la commande précédente est ensuite transmis à VI / M pour ouvrir le programme à la ligne spécifiée.

Astuce n ° 14: Personnalisation de votre environnement VI / M

Si vous utilisez VI / M pour modifier des fichiers de configuration ou pour écrire du code, vous voudrez pouvoir afficher les numéros de ligne lorsque vous ouvrez le programme pour la première fois et pour définir une indentation automatique afin que lorsque vous appuyez sur le Entrer clé, le curseur sera automatiquement placé à la bonne position. De plus, vous souhaiterez peut-être personnaliser le nombre d'espaces blancs qu'un onglet occupe.

Bien que vous puissiez le faire chaque fois que vous lancez VI / M, il est plus facile de définir ces options ~ /.vimrc afin qu'ils soient automatiquement appliqués:

SET NUMÉRO SET AUTOINDENT SET SHIFTWIDTH = 4 SET SOFTTABSTOP = 4 SET EXPANDTAB 

Pour plus d'options pour personnaliser votre environnement VI / M, vous pouvez vous référer à la documentation VIM en ligne.

Astuce n ° 15: Obtenez une aide / options General Vim avec Vimtutor

Si à tout moment vous devez brosser vos compétences générales VI / M, vous pouvez lancer vimtuteur De la ligne de commande qui affichera une aide VI / M complète que vous pouvez vous référer aussi souvent que vous le souhaitez sans avoir besoin de tirer un navigateur Web pour rechercher comment accomplir une certaine tâche dans VI / M.

# vimtutor 
Aide et options de l'éditeur VIM

Notez que vous pouvez naviguer ou rechercher le contenu de Vimtutor comme si vous naviguiez dans un fichier régulier dans VI / M.

Résumé

Dans cette série de 2 articles, j'ai partagé plusieurs conseils et astuces VI / M qui devraient vous aider à être plus efficace en matière d'édition de texte à l'aide d'outils de ligne de commande. Je suis sûr que vous devez en avoir d'autres - alors n'hésitez pas à les partager avec le reste de la communauté en utilisant le formulaire ci-dessous. Comme toujours, les questions et les commentaires sont également les bienvenus.

Soumettez votre astuce VI / VIM ou votre astuce