bash에서 범위를 반복하는 방법은
for i in {0..10}; do echo $i; done
단계를 통해 시퀀스를 반복하는 구문은 무엇입니까? 위의 예에서 짝수 만 받고 싶습니다.
답변
할거야
for i in `seq 0 2 10`; do echo $i; done
(물론 seq 0 2 10
자체적으로 동일한 출력을 생성 하지만 ).
주 seq
수는 부동 소수점 숫자 (예를 들어, seq .5 .25 3.5
)하지만 배쉬의 중괄호 확장은 정수만을 할 수 있습니다.
답변
Bash 4 의 버팀대 확장에는 단계 기능이 있습니다.
for {0..10..2}; do
..
done
Bash 2/3 (루프에 대한 C 스타일, 위 답변 참조) 또는 Bash 4에 관계없이 ‘seq’명령보다 더 선호합니다.
답변
추가 과정없이 순수 배쉬 :
for (( COUNTER=0; COUNTER<=10; COUNTER+=2 )); do
echo $COUNTER
done
답변
#!/bin/bash
for i in $(seq 1 2 10)
do
echo "skip by 2 value $i"
done
답변
> seq 4
1
2
3
4
> seq 2 5
2
3
4
5
> seq 4 2 12
4
6
8
10
12
> seq -w 4 2 12
04
06
08
10
12
> seq -s, 4 2 12
4,6,8,10,12