![변수 값을 대괄호 확장 시퀀스 값으로 전달하는 방법은 무엇입니까?](https://linux55.com/image/102236/%EB%B3%80%EC%88%98%20%EA%B0%92%EC%9D%84%20%EB%8C%80%EA%B4%84%ED%98%B8%20%ED%99%95%EC%9E%A5%20%EC%8B%9C%ED%80%80%EC%8A%A4%20%EA%B0%92%EC%9C%BC%EB%A1%9C%20%EC%A0%84%EB%8B%AC%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
코드 블록은 구체적으로 다음과 같습니다.
for n in {1..$PASSEDARGS}; do
printf "%s\n" "$n"
done
다음 코드 블록은 작동하지 않지만 대신 {1..3}
3이 스크립트에 전달된 인수 수인 값을 인쇄합니다.
프로그램 인쇄 매개변수를 만드는 방법은 무엇입니까 $n
?
답변1
Bash의 C와 유사한 for 루프 구문을 사용하십시오.
for (( i = 1; i <= PASSEDARGS; ++i )); do
printf "%s\n" "$i"
done
답변2
for n in $(seq $#); do
printf "%s\n" "$n"
eval echo argument at $n: \$$n
done