다른 파일 이름으로 명령 반복

다른 파일 이름으로 명령 반복

누군가의 레이업인데...

다음 명령을 반복해서 실행해야 합니다.

$ wp input csv MyCSV01.csv directory_name
$ wp input csv MyCSV02.csv directory_name
$ wp input csv MyCSV03.csv directory_name

유일한 변경 사항은 파일 이름이 증가한다는 것입니다. 이 모든 것을 어떻게 지속적으로 실행할 수 있습니까?

어쩌면 시작하는 모든 파일을 찾아 MyCSV*순서대로 실행할 수 있을까요? 및/또는 MyCSV03.csv실행할 파일 범위를 지정합니까 MyCSV05.csv?

이상적으로 이 솔루션은 명령줄에 사용할 수 있을 만큼 짧지만 스크립트일 수도 있습니다.

답변1

for i in {01..20}; do  #replace with your own range
   echo \
   wp input csv "MyCSV$i.csv" directory_name
done

에코 라인이 원하는 결과를 제공하는 경우 주석 처리하십시오.

zsh질문에 라벨을 붙인 은 더 짧은 형식을 갖습니다.

for i (MyCSV{01..20}.csv) wp input csv $i directory_name

또는 해당 기능을 사용할 수 있습니다 zargs.

autoload zargs # best in ~/.zshrc
zargs -i MyCSV{01..20} -- wp input csv {} directory_name

답변2

for   csv in MyCSV[01][0-9].csv
do    wp  input "$csv" directory_name
done

답변3

zsh에서

: MyCSV<01-20>.csv(e*'wp input csv $REPLY directory_name'*)

관련 정보