쉘 스크립트 루프에서 여러 개의 구성된 입력 파일을 호출하는 방법

쉘 스크립트 루프에서 여러 개의 구성된 입력 파일을 호출하는 방법

프로그램을 실행하기 위한 입력 파일이 여러 개 있고 입력 파일 이름이 숫자가 되도록 구성했습니다. 이러한 다양한 입력 파일을 호출하는 루프를 작성하는 것이 가능한지, 즉 이름이 루프 변수인 하나의 입력 파일을 호출하는 것이 가능한지 궁금합니다.

더 구체적으로 말하면 "fort.XXX"라는 이름의 포트란 입력 파일을 만들었습니다. 여기서 XXX는 1부터 100까지의 숫자입니다. 각 입력을 호출하려면 "program fort.XXX"와 같은 명령을 사용합니다. 일부는 상수("Program Fortress")이고 일부는 변수("XXX")로 구성된 명령을 작성하는 루프를 만드는 방법이 있습니까?

미리 감사드립니다.

카요.

답변1

이러한 기존 파일의 이름을 사용하려면 다음과 같이 사용할 수 있습니다.

for FILE in fort.*
do
    echo "$FILE"
done

fort.파일 수에 관계없이 현재 디렉터리의 모든 파일을 사용합니다. 물론 echo여기에서는 . 대신 다른 명령을 사용할 수 있습니다.

답변2

다음은 bash for 루프에서 범위를 사용하는 예입니다.

#!/bin/bash
for i in {1..100}
do
echo "program fort.${i}"
done

그러면 다음과 같은 출력이 제공됩니다.

program fort.1
program fort.2
program fort.3
program fort.4
...
program fort.99
program fort.100

관련 정보