web-dev-qa-db-fra.com

Ajouter un nouveau caractère de ligne à la fin du fichier dans bash

Comment utiliser la ligne de commande bash pour ajouter un nouveau caractère de ligne à la fin du fichier nommé file.txt. J'ai essayé d'utiliser echo mais ce n'est pas correct. Pouvez-vous me montrer comment puis-je le faire? 

20
Do Thanh Tung
echo "" >> file.txt

Ajoute un caractère de nouvelle ligne à la fin

40
Ashkan

Avec sed:

sed -i '' -e '$a\' file.txt

avec echo:

echo  >> file.txt
6
MLSC

Utilisez Vi qui crée automatiquement EOL à EOF lors de la sauvegarde du fichier.

Par exemple:

vi -escwq foo.txt

ou:

ex -scwq foo.txt

Pour corriger plusieurs fichiers, consultez: Comment résoudre le problème de l'absence de nouvelle ligne à la fin du fichier? à SO

2
kenorb

GNU bash, version 3.2.57 (1) - release (x86_64-Apple-darwin14)

echo \ >> file.txt
2
jusopi

Cela fonctionne sur des centos que la chaîne vide ci-dessus n'a pas.

sed -i -e '$a\' file
1
GarethReid