Les éditeurs Unix aiment viet vimvont toujours mettre les nouvelles lignes ( \n) à la fin de chaque ligne - en particulier la dernière ligne. S'il n'y a pas de fin de ligne ( eol) sur la dernière ligne, il s'agit d'une situation inhabituelle et le fichier n'a certainement pas été créé par un éditeur UNIX standard.
Cette situation inhabituelle vous est signalée par le [noeol]drapeau dans l' viméditeur. d'autres éditeurs ont probablement des drapeaux et des notifications similaires.
Dans emacs, déplacez le curseur à la fin du fichier (dernière ligne, après le dernier caractère) et exécutez kill-line, vous finissez par supprimer le fichier eol.
Yeow_Meng
1
Et certains services gémissent et se plaignent et ne démarrent pas en raison d'erreurs dues à l'absence d'EOL à EOF
ivanivan
20
Que la dernière ligne du fichier n'a pas de nouvelle ligne (\ n)
@Bon Ami: Certains programmes, lors de la lecture de votre fichier texte, ont besoin \nde la fin de la ligne pour le considérer comme une ligne terminée (avec un caractère de fin de nouvelle ligne). L'exemple suivant montre un fichier qui peut ressembler à une complète ligne à un coup d' oeil occasionnel dans un éditeur de texte, mais wcne pas condider comme une ligne: printf "x">"file-no-newline"; wc -l <"file-no-newline"- Outpute est: 0 .. le noeol est juste une aide visuelle pour vous laisser savoir la statut ..
Peter.O
2
Cela signifie que le système d'exploitation sur lequel vous visualisez le fichier n'est pas en mesure de détecter la fin de la ligne du fichier (si le fichier en contient). Parfois, cela se produit lorsque vous déplacez un ou plusieurs fichiers d’un système à l’autre (par exemple, de MS à * nix os)
Dans vim, si le fichier a un retour chariot Windows " ^M", vous pouvez le corriger avec la commande suivante: in vim do:
:%s/^M/\r/g
sens:
% => select the whole buffer
s => Search
/^M/ => find Windows Carrage return.
/\r/ => Replae it with *nix carrage return
Son 'NO EOL' - pas d' indicateur de fin de ligne . Très utile si vous ouvrez un fichier très volumineux (> 1 Go). Vim essaie de tirer tout ça en 1 ligne. Cet indicateur m'aide à fermer rapidement le fichier avant de vider mon système d'exploitation.
Réponses:
Les éditeurs Unix aiment
vi
etvim
vont toujours mettre les nouvelles lignes (\n
) à la fin de chaque ligne - en particulier la dernière ligne. S'il n'y a pas de fin de ligne (eol
) sur la dernière ligne, il s'agit d'une situation inhabituelle et le fichier n'a certainement pas été créé par un éditeur UNIX standard.Cette situation inhabituelle vous est signalée par le
[noeol]
drapeau dans l'vim
éditeur. d'autres éditeurs ont probablement des drapeaux et des notifications similaires.la source
emacs
, déplacez le curseur à la fin du fichier (dernière ligne, après le dernier caractère) et exécutezkill-line
, vous finissez par supprimer le fichiereol
.Que la dernière ligne du fichier n'a pas de nouvelle ligne (\ n)
la source
\n
de la fin de la ligne pour le considérer comme une ligne terminée (avec un caractère de fin de nouvelle ligne). L'exemple suivant montre un fichier qui peut ressembler à une complète ligne à un coup d' oeil occasionnel dans un éditeur de texte, maiswc
ne pas condider comme une ligne:printf "x">"file-no-newline"; wc -l <"file-no-newline"
- Outpute est:0
.. le noeol est juste une aide visuelle pour vous laisser savoir la statut ..Cela signifie que le système d'exploitation sur lequel vous visualisez le fichier n'est pas en mesure de détecter la fin de la ligne du fichier (si le fichier en contient). Parfois, cela se produit lorsque vous déplacez un ou plusieurs fichiers d’un système à l’autre (par exemple, de MS à * nix os)
Dans vim, si le fichier a un retour chariot Windows "
^M"
, vous pouvez le corriger avec la commande suivante: in vim do:sens:
Remarque: sous Mac OX,
^M is ctl+v && ctrl+m
la source
Son 'NO EOL' - pas d' indicateur de fin de ligne . Très utile si vous ouvrez un fichier très volumineux (> 1 Go). Vim essaie de tirer tout ça en 1 ligne. Cet indicateur m'aide à fermer rapidement le fichier avant de vider mon système d'exploitation.
la source