Dois tipos de aplicativos me vêm à mente onde os loops de shell não são considerados a melhor abordagem. O primeiro é o processamento de dados; muitas ferramentas (como sed
, awk
, perl
, etc.) fazem o loop implicitamente e muito mais desempenho. A segunda é (como em seu código de amostra), onde algum código é executado para um conjunto de arquivos, onde find
com a opção -exec
também pode executar comandos (também um shell) com menos problemas e sobrecarga. Existem provavelmente mais casos, mas os dois mencionados já devem ser esclarecedores. Dito isto; loops de shell não são inerentemente ruins, ou algo assim. Apenas tome outras opções (como as duas mencionadas) em sua consideração.