Disons que j'ai un grand fichier avec de nombreuses lignes et de nombreuses colonnes. Je voudrais savoir combien de lignes et de colonnes j'ai en utilisant bash.
Réponses
Trop de publicités?Solution Perl :
perl -ane '$maxc = $#F if $#F > $maxc; END{$maxc++; print "max columns: $maxc\nrows: $.\n"}' file
Si votre fichier d'entrée est séparé par des virgules :
perl -F, -ane '$maxc = $#F if $#F > $maxc; END{$maxc++; print "max columns: $maxc\nrows: $.\n"}' file
salida:
max columns: 5
rows: 2
-a
divise automatiquement la ligne d'entrée en @F
tableau$#F
est le nombre de colonnes -1-F,
séparateur de champ de , au lieu de l'espace blanc$.
est le numéro de la ligne (nombre de rangées)
Le code suivant fera le travail et vous permettra de spécifier le délimiteur de champ. Ceci est particulièrement utile pour les fichiers contenant plus de 20k lignes.
awk 'BEGIN {
FS="|";
min=10000;
}
{
if( NF > max ) max = NF;
if( NF < min ) min = NF;
}
END {
print "Max=" max;
print "Min=" min;
} ' myPipeDelimitedFile.dat
- Réponses précédentes
- Plus de réponses