Como chamar vários arquivos de entrada organizados em um loop de script de shell

0

Eu tenho vários arquivos de entrada para rodar um programa, e os organizei de uma forma que os nomes dos arquivos de entrada são números. Eu gostaria de saber se é possível escrever um loop para chamar esses arquivos de entrada diferentes, ou em outras palavras, para chamar um arquivo de entrada cujo nome é uma variável do loop.

Para ser mais específico, criei os arquivos de entrada em fortran, cujos nomes são "fort.XXX", em que o XXX é um número, de 1 a 100. Eu chamo cada uma dessas entradas com um comando como "program fort.XXX" Existe uma maneira de criar um loop no qual vou escrever um comando que é parte constante ("programa strong".) E parte variável ("XXX")?

Muito obrigado antecipadamente,

Cayo.

    
por Cayo Emilio 08.10.2018 / 12:58

2 respostas

1

Se você quiser usar os nomes desses arquivos existentes, pode usar algo assim:

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

Ele usará todos os arquivos no diretório atual a partir de fort. , independentemente do número de arquivos. Claro, você pode usar qualquer outro comando no lugar de echo , aqui.

    
por 08.10.2018 / 13:41
0

Aqui está um exemplo que usa um intervalo com o bash for loop:

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

Qual deve dar a seguinte saída:

program fort.1
program fort.2
program fort.3
program fort.4
...
program fort.99
program fort.100
    
por 08.10.2018 / 13:26