Extraire seulement les 10 premières lignes d'un fichier csv dans powershell
j'ai un fichier csv et je veux sortir un nouveau fichier csv, qui ne contient que les 10 premières lignes du fichier original. Jusqu'à présent j'ai seulement trouvé du code pour supprimer des lignes simples ou des lignes qui contiennent un certain mot. C'est probablement un one-liner de 15 caractères, mais je ne sais pas comment aborder cela, toute aide serait grandement apprécié. Je ne m'attends pas à ce que tu écrives du code, juste la bonne commande m'aiderait.
4 réponses
Get-Content "C:\start.csv" | select -First 10 | Out-File "C:\stop.csv"
Qu'il a fait
utiliser le paramètre-TotalCount est recommandé. Surtout si vous avez un gros fichier CSV. De cette façon, vous ne lirez que les 10 premières lignes de votre fichier CSV au lieu de lire toutes les lignes, sélectionner les 10 premières lignes et les extraire.
Get-Content C:\Temp\Test.csv -TotalCount 3 | Out-File C:\Temp\Test10lines.csv
cela fonctionne à partir de Powershell 2.
Vous pouvez aussi utiliser
(Get-Content yourfile.csv)[0 .. 11]>outputfile.csv
assurez-vous d'inclure l'en-tête de ligne ou vous pouvez rencontrer des problèmes. Vous pouvez aussi changer les nombres pour obtenir les lignes que vous voulez. Le premier et les drapeaux de tête n'ont pas fonctionné pour moi.