반응형
bash 스텝n을 사용하여 범위를 작성하려면 어떻게 해야 합니까?(증분으로 일련의 숫자를 생성합니다.)
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의 괄호 확장에서는 정수만 사용할 수 있습니다.
Bash 4의 브레이스 확장에는 스텝 기능이 있습니다.
for {0..10..2}; do
..
done
Bash 2/3(루프는 C-style, 위의 답변 참조) 또는 Bash 4 중 어느 것이든 'seq' 명령어보다 더 좋습니다.
Pure Bash, 추가 프로세스 없음
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
명령어:
$ 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
1,2,3,4
중괄호 확장 {m..n}..s}가 seq보다 효율적입니다.또한 다음과 같은 출력 형식을 사용할 수 있습니다.
$ echo {0000..0010..2}
0000 0002 0004 0006 0008 0010
예를 들어 파일에 번호를 매기고 'ls'의 정렬된 출력을 원하는 경우 유용합니다.
언급URL : https://stackoverflow.com/questions/966020/how-to-produce-a-range-with-step-n-in-bash-generate-a-sequence-of-numbers-with
반응형
'programing' 카테고리의 다른 글
WPF 타이머 컨트롤은 어디에 있습니까? (0) | 2023.04.11 |
---|---|
NSView의 배경색을 변경하는 가장 좋은 방법 (0) | 2023.04.11 |
Git 푸시 오류: 리포지토리를 찾을 수 없습니다. (0) | 2023.04.11 |
Windows에서 cURL을 설치하고 사용하는 방법 (0) | 2023.04.11 |
UICollection현재 표시 가능한 셀 인덱스 보기 (0) | 2023.04.11 |