
중괄호 확장 전에 명령 대체를 수행하고 싶지만 할 수 없습니다.
$ ls {$(seq -s , 13 20)}.pdf
ls: cannot access {13,14,15,16,17,18,19,20}.pdf: No such file or directory
내가 어떻게 해?
답변1
간단히 내장된 쉘을 사용해야 합니다 eval
.
$ eval ls {$(seq -s , 13 20)}.pdf
eval
전달된 인수는 어디에 있습니까?
ls {$(seq -s , 13 20)}.pdf
이를 하나의 명령으로 연결합니다.
ls {13,14,15,16,17,18,19,20}.pdf
그런 다음 쉘에서 읽고 실행합니다.
$ eval ls {$(seq -s , 13 20)}.pdf
13.pdf 14.pdf 15.pdf 16.pdf 17.pdf 18.pdf 19.pdf 20.pdf
답변2
시도해 봤어?
ls $(seq -f %.0f.pdf 13 20 )
-f
형식 문자열을 제공합니다.0f
0 십진수 부동소수점의 경우.pdf
분명한
(그리고 당신은 $( ) 구문에 대해 알고 있습니다)