나는 이 스크립트를 수행하고 있습니다(zsh를 사용하지만 그다지 중요하지 않은 것 같습니다).
mylist=`seq 1 3`
for i in $mylist ; do echo "abc/$i" ; done
이는 다음을 제공합니다:
abc/1
2
3
보고 싶지만 :
abc/1
abc/2
abc/3
누군가 작동하지 않는 이유/수행 방법을 알아낼 수 있다면 정말 감사하겠습니다.
답변1
간단하게 유지할 수 있습니다.
for i in 1 2 3; do echo "abc/$i" ; done
또는
for i in $(seq 1 3); echo "abc/$i"
산출:
abc/1
abc/2
abc/3
답변2
이런 종류의 작업을 수행하는 또 다른 방법은 중괄호 확장을 이용하는 것입니다.
echo abc/{1..3}
하지만 당연히 줄 바꿈을 요구하므로 다음과 같이 해야 합니다.
abc_strings=( abc/{1..3} )
printf "%s\n" "${abc_strings[@]}"