8 votes

Afficher 1 à N sur le terminal

Je cherche juste une chose simple, foo 8 montre ceci :

1
2
3
4
5
6
7
8

PS : Je ne cherche que la ligne de commande. Je sais comment la créer en utilisant for sur le bash

29voto

Igor Points 845

Pour imprimer une séquence de nombres, la commande 'seq' est votre amie.

seq 8

16voto

Mufaka Points 54

{1..8} vous donnera une gamme d'arguments simples en Bash.

Si vous avez besoin de cette information ligne par ligne, je vous suggère de la transmettre à quelque chose comme printf :

$ printf '%d\n' {1..8}
1
2
3
4
5
6
7
8

7voto

Registered User Points 9233

Vous pouvez également utiliser echo commande avec expansion des accolades

echo -e "\n"{1..8}

1 
2 
3 
4 
5 
6 
7 
8

Si vous ne voulez pas la nouvelle ligne initiale, vous pouvez utiliser l'une des commandes suivantes.

echo -e "\n"{1..8}|tail -n8

echo -e "\n"{1..8}|grep .

echo -e "\n"{1..8}|grep [0-9]

echo -e "\n"{1..8}|sed 1d

6voto

Ninja Points 1

Vous pouvez également l'obtenir de la manière la plus simple, comme suit :

$ echo {1..8} | tr ' ' '\n'
1
2
3
4
5
6
7
8

OU :

$ for ((i=1 ; i<=8 ; i++)) do echo $i ; done;
1
2
3
4
5
6
7
8

8 peut être remplacé par votre nombre entier positif 'N' !

4voto

Avinash Raj Points 72686

Vous pouvez utiliser ce simple for commandement,

$ for i in {1..8}; do echo $i; done
1
2
3
4
5
6
7
8

Par le biais de l'awk,

$ awk 'BEGIN{for(i=1;i<=8;i++) {print i;}}'
1
2
3
4
5
6
7
8

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X