Vérifier si la derniére d'un fichier est une ligne vide - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 20-11-2009 à 11:49:53
[ $(tail -1 fichier | wc -w) -eq 0 ] && echo "OK" || echo "FAIL" |
Marsh Posté le 20-11-2009 à 12:01:47
salut,
Je viens d'essayer mais ca n'a pas l'air de marcher.
Exemple de fichier
|
Si j'applique la commande :
|
j'obtiens
|
Alors qu'il y a bien une ligne vide à la fin de mon fichier. J'ai l'impression que tail enleve la dernière ligne si elle est vide.
Marsh Posté le 20-11-2009 à 12:03:03
ta ligne n'est pas vide, y'a un espace
Marsh Posté le 20-11-2009 à 12:06:25
Pour ne pas tenir compte des espaces qui pourraient s'être glissés sans prévenir:
[ $(tail -1 fichier | sed -e 's@ @@g' | wc -w) -eq 0 ] && echo "OK" || echo "FAIL" |
Marsh Posté le 20-11-2009 à 12:08:01
mais par contre si t'as 2 lignes vides, faut adapter quoi, là je vérifie seulement que la dernière est bien vide
Marsh Posté le 20-11-2009 à 12:17:08
ReplyMarsh Posté le 20-11-2009 à 13:22:36
wedgeant a écrit : mais par contre si t'as 2 lignes vides, faut adapter quoi, là je vérifie seulement que la dernière est bien vide |
Ah, je crois avoir compris pourquoi. En fait, je me suis fait avoir par mon editeur de texte. Mais un coup d'oeil avec vi (ou cat -nA) m'a permis de voir qu'en fait je n'avais pas de ligne vide en fin de fichier.
morris aka the moose a écrit : à quoi ca sert de savoir si la dernière ligne d'un fichier est vide? |
Ben en fait, je souhaite, que tous mes fichiers est leur dernière ligne vide, car il me semblait cela nécessaire sous linux.
Marsh Posté le 20-11-2009 à 13:24:32
Il me semblait que tous les programmes l'ajoutaient si celles-ci s'avérait absente...
Marsh Posté le 21-11-2009 à 10:08:00
le fou a écrit : Ben en fait, je souhaite, que tous mes fichiers est leur dernière ligne vide, car il me semblait cela nécessaire sous linux. |
T'as lu ça où ?
Marsh Posté le 21-11-2009 à 11:43:42
Je crois que c'est GCC qui est pas content si y'en a pas. Ou ç'a été le cas avant.
Marsh Posté le 21-11-2009 à 19:19:29
Dans sa version 0.1 ?
Pis bon gcc != Linux
Marsh Posté le 22-11-2009 à 11:43:46
e_esprit a écrit : |
Ben, justement je sais pas. Et j'en étais pas sur.
Mais pour mes fichiers, j'en ai besoin, c'est pour ca que je faisais ce bout de script.
Marsh Posté le 26-11-2009 à 20:01:02
morris aka the moose a écrit : à quoi ca sert de savoir si la dernière ligne d'un fichier est vide? |
parce que un fichier qui se termine par une ligne vide, c'est un peut moins emmerdant?
|
(example de fichier qui ne se termine pas par une ligne vide)
Marsh Posté le 20-11-2009 à 11:32:28
Bonjour,
j'ai crée un petit script pour vérifier mes fichiers sources (Langage VHDL). Et notament, dans ce script, je vérifie que la présence d'une dernier ligne vide à la fin de mon fichier (et une seule).
Pour ce faire, je fait :
Cela fonctionne bien, mais c'est peut etre un peu lourd, et pas forcement (voir pas du tout) optimisé.
Donc, je me demandais, et je voulais vous demander s'il n'y avait pas un moyen plus simple pour faire cela.
merci.
---------------
Celui qui sauve une vie, sauve l'humanité (Le Talmud) - Personne n'a plus grand amour que celui de donner sa vie pour ses amis (Jean XV, 13)