Execute um comando em cada arquivo em um diretório, alterando o nome da saída

Execute um comando em cada arquivo em um diretório, alterando o nome da saída

Preciso compilar todos os arquivos C em um diretório em saídas separadas... veja o exemplo gcc -Wall program1.c -o program1.out

Como eu faço isso?

Responder1

Usarmanipulação de cordas:

for f in *.c; do gcc -Wall "$f" -o "${f%%.c}.out"; done

Não há necessidade de expressões regulares complicadas ou qualquer coisa que não seja um shell embutido aqui.

informação relacionada