# RÉSOLU Vim : ouvrir le fichier à la Nième ligne avant la fin

**URL:** <https://www.debian-fr.org/t/resolu-vim-ouvrir-le-fichier-a-la-nieme-ligne-avant-la-fin/72254>\
**Category:** Programmation\
**Created:** [Janvier 6, 2017, 4:06 UTC](https://www.debian-fr.org/t/resolu-vim-ouvrir-le-fichier-a-la-nieme-ligne-avant-la-fin/72254 "2017-01-06T16:06:05Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![josephtux](https://www.debian-fr.org/user_avatar/www.debian-fr.org/josephtux/32/3985_2.png) [@josephtux](https://www.debian-fr.org/u/josephtux)\
**Post date:** [Janvier 6, 2017, 4:06 UTC](https://www.debian-fr.org/t/resolu-vim-ouvrir-le-fichier-a-la-nieme-ligne-avant-la-fin/72254/1 "2017-01-06T16:06:06Z")

</div>

Bonjour  
existe-t-il le moyen de donner en paramètre à vim  
soit le numéro d’une ligne, en comptant à partir de la fin,  
soit une ligne désignée par une regex  
pour qu’il s’ouvre directement sur cette ligne?

Il me semble que oui, mais je ne parviens pas à retrouver cette option.

Merci

EDIT, ce n’est pas dans :help, mais dans man vim!

Désolé pour cette étourderie

---

<div class="post-metadata">

**Author:** ![josephtux](https://www.debian-fr.org/user_avatar/www.debian-fr.org/josephtux/32/3985_2.png) [@josephtux](https://www.debian-fr.org/u/josephtux)\
**Post date:** [Janvier 6, 2017, 6:02 UTC](https://www.debian-fr.org/t/resolu-vim-ouvrir-le-fichier-a-la-nieme-ligne-avant-la-fin/72254/2 "2017-01-06T18:02:48Z")

</div>

J’ai trouvé:  
`vim +/regex fichier.txt` pour ouvrir fichier.txt et se placer sur la ligne correspondante à regex  
et  
`vim +n fichier.txt` pour ouvrir fichier.txt et se placer sur la ligne n

La question reste non résolue sur la question d’ouvrir sur une ligne numérotée à rebours (en partant de la fin)

---

<div class="post-metadata">

**Author:** ![anon29980398](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/f4b2a3/32.png) [@anon29980398](https://www.debian-fr.org/u/anon29980398)\
**Post date:** [Janvier 6, 2017, 9:43 UTC](https://www.debian-fr.org/t/resolu-vim-ouvrir-le-fichier-a-la-nieme-ligne-avant-la-fin/72254/3 "2017-01-06T21:43:59Z")

</div>

Bonsoir **josephtux**

Un petit script, peut-être :

```auto
#!/bin/bash

["${#@}" = "2"] && vim +$(( $(wc -l < "${2}") - ($1 - 1) )) "${2}" || \
echo "$0 <nombre_de_lignes_avant_EOF> <nom_de_fichier>"

```

---

<div class="post-metadata">

**Author:** ![Watael](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/w/a4c791/32.png) [@Watael](https://www.debian-fr.org/u/Watael)\
**Post date:** [Janvier 7, 2017, 12:36 UTC](https://www.debian-fr.org/t/resolu-vim-ouvrir-le-fichier-a-la-nieme-ligne-avant-la-fin/72254/4 "2017-01-07T00:36:58Z")

</div>

salut,

`vim +'normal G5k' ~/lorem\ ipsum`  
par exemple, pour aller à la cinquième ligne avant la fin du fichier `~/lorem ipsum`.

Edit:  
@anon29980398 :  
le nombre d’arguments, c’est `$#`, tout simplement;  
et les guillemets ne sont pas nécessaires étant donné que les nombres sont “insécables”.

---

<div class="post-metadata">

**Author:** ![anon29980398](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/f4b2a3/32.png) [@anon29980398](https://www.debian-fr.org/u/anon29980398)\
**Post date:** [Janvier 7, 2017, 11:33 UTC](https://www.debian-fr.org/t/resolu-vim-ouvrir-le-fichier-a-la-nieme-ligne-avant-la-fin/72254/5 "2017-01-07T11:33:56Z")

</div>

Bonjour **josephtux** et **Watael**

**@josephtux** Laissse tomber ma proposition de script car la proposition de **Watael** est tout simplement la meilleure.

**@Watael** Merci beaucoup pour tes recommandations concernant mon essais de script. J’apprécie 🙂  
Je ne modifie pas mon message original pour garder la cohérence de la suite des messages de ce fil, mais j’en prends note.

---

<div class="post-metadata">

**Author:** ![josephtux](https://www.debian-fr.org/user_avatar/www.debian-fr.org/josephtux/32/3985_2.png) [@josephtux](https://www.debian-fr.org/u/josephtux)\
**Post date:** [Janvier 7, 2017, 5:01 UTC](https://www.debian-fr.org/t/resolu-vim-ouvrir-le-fichier-a-la-nieme-ligne-avant-la-fin/72254/6 "2017-01-07T17:01:17Z")

</div>

Merci Micp et Watael

J’avais bien imaginé un script sans l’avoir réalisé, mais la réponse attendue est bien celle de Watael, mais où vous trouvé cette info («normal») ?

---

<div class="post-metadata">

**Author:** ![anon29980398](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/f4b2a3/32.png) [@anon29980398](https://www.debian-fr.org/u/anon29980398)\
**Post date:** [Janvier 7, 2017, 5:52 UTC](https://www.debian-fr.org/t/resolu-vim-ouvrir-le-fichier-a-la-nieme-ligne-avant-la-fin/72254/7 "2017-01-07T17:52:26Z")

</div>

Même chose pour moi : il me manquait cette syntaxe : **normal**  
J’avais pourtant essayé sans succès avec l’option **-e** et **G10k** pour mes tests…

[quote=“josephtux, post:6, topic:72254”]  
je vais essayer de comprendre («normal» ?)  
[/quote][https://en.wikibooks.org/wiki/Learning\_the\_vi\_Editor/Vim/Modes](https://en.wikibooks.org/wiki/Learning_the_vi_Editor/Vim/Modes)

---

<div class="post-metadata">

**Author:** ![josephtux](https://www.debian-fr.org/user_avatar/www.debian-fr.org/josephtux/32/3985_2.png) [@josephtux](https://www.debian-fr.org/u/josephtux)\
**Post date:** [Janvier 7, 2017, 5:54 UTC](https://www.debian-fr.org/t/resolu-vim-ouvrir-le-fichier-a-la-nieme-ligne-avant-la-fin/72254/8 "2017-01-07T17:54:59Z")

</div>

Ça y est,  
:normal  
permet de passer les commandes du mode normal en mode ex (celui qui est documenté dans man vim, avec l’option «+»)

Documenté dans :help normal, _tout simplement_

J’ai l’impression d’avoir grandi d’un petit mm 😉

Encore merci (et merci vim)
