Copie vários arquivos com o mesmo nome de locais diferentes para o mesmo local

Copie vários arquivos com o mesmo nome de locais diferentes para o mesmo local

Desejo copiar vários arquivos com o mesmo nome de locais diferentes para o mesmo local (alterando seus nomes de acordo com o local original).

Por exemplo, quero copiar,

/apple/test.txt
/banana/test.txt
/grape/test.txt

em

/fruits/apple_test.txt
/fruits/banana_test.txt
/fruits/grape_test.txt

Existe um método para fazer isso no Linux?

Responder1

Você pode usar um forloop:

#!/bin/bash

for fruit in apple banana grape; do
    cp "/${fruit}/test.txt" "/fruits/${fruit}_test.txt"
done

O loop é executado três vezes; cada vez que a variável fruitassume um dos três valores apple,, bananae grape. Para cada fruta, copia o arquivo original para o arquivo de destino.

informação relacionada