Eu tenho o código abaixo para substituir algumas strigns em vários arquivos, mas o loop for está verificando o primeiro arquivo e não executando o script perl. abaixo está o meu código
if [ -f zebu.work.post_opt/ZEBU_CTO_FT_MOD.v ]
then
for file in $(./zebu.work.post_opt/ZEBU_CTO_FT_MOD*);
do
perl -i -p -e 's/input/inout/g' $file;
perl -i -p -e 's/output/inout/g' $file;
perl -i -p -e 's/wire.*\n/tran\(i0,\ o\);/g' $file;
perl -i -p -e 's/assign.*\n//g' $file;
done
fi
$(...)
padrão globbing do seu nome de arquivo. Você não precisa de uma substituição de comando lá. Você também pode combinar as quatro invocações Perl em uma única para obter velocidade.