La headcommande peut obtenir les premières nlignes. Les variations sont:
head -7 file
head -n 7 file
head -7l file
qui obtiendra les 7 premières lignes du fichier appelé "file". La commande à utiliser dépend de votre version de head. Linux fonctionnera avec le premier.
Pour ajouter des lignes à la fin du même fichier, utilisez:
echo 'first line to add' >>file
echo 'second line to add' >>file
echo 'third line to add' >>file
ou:
echo 'first line to add
second line to add
third line to add' >>file
pour le faire en un seul coup.
Donc, en liant ces deux idées ensemble, si vous voulez obtenir les 10 premières lignes du input.txtfichier output.txtet y ajouter une ligne de cinq "="caractères, vous pouvez utiliser quelque chose comme:
( head -10 input.txt ; echo '=====' ) > output.txt
Dans ce cas, nous effectuons les deux opérations dans un sous-shell afin de consolider les flux de sortie en un seul, qui est ensuite utilisé pour créer ou écraser le fichier de sortie.
Les sous-shells vous permettent de faire cela sans rouvrir le fichier de sortie:(head -n10 file.txt ; echo "Some stuff" ; tail -n +10 file.txt) > newfile.txt
head -n 100 yourfile.csv > shrunkfile.csv && echo 'morelines' >> shrunkfile.csv
Réponses:
La
head
commande peut obtenir les premièresn
lignes. Les variations sont:qui obtiendra les 7 premières lignes du fichier appelé
"file"
. La commande à utiliser dépend de votre version dehead
. Linux fonctionnera avec le premier.Pour ajouter des lignes à la fin du même fichier, utilisez:
ou:
pour le faire en un seul coup.
Donc, en liant ces deux idées ensemble, si vous voulez obtenir les 10 premières lignes du
input.txt
fichieroutput.txt
et y ajouter une ligne de cinq"="
caractères, vous pouvez utiliser quelque chose comme:Dans ce cas, nous effectuons les deux opérations dans un sous-shell afin de consolider les flux de sortie en un seul, qui est ensuite utilisé pour créer ou écraser le fichier de sortie.
la source
Je suppose que ce que vous essayez de réaliser est d'insérer une ligne après les premières lignes d'un fichier texte.
Si vous ne voulez pas rester les lignes du fichier, ignorez simplement la partie de fin.
la source
(head -n10 file.txt ; echo "Some stuff" ; tail -n +10 file.txt) > newfile.txt
Premières lignes:
man head
.Ajouter des lignes: utilisez l'
>>
opérateur (?) Dans Bash:la source