src=/
dst=/files
for srcfile in ${src}Group*/*.wav; do
srctrimmed="${srcfile#$src}"
cp "$srcfile" "$dst/${srctrimmed/\//_}"
done
Eu tenho uma configuração de diretório da seguinte forma:
/Group1/audiofile1.wav
/Group1/audiofile2.wav
/Group1/audiofile3.wav
/Group1/audiofile4.wav
/Group2/audiofile1.wav
/Group2/audiofile2.wav
/Group3/audiofile1.wav
/Group3/audiofile2.wav
/Group3/audiofile3.wav
/Group3/audiofile4.wav
/Group3/audiofile5.wav
.. etc. Eu quero escrever um script que pode copiar esses arquivos para um local diferente, com um nome de arquivo diferente, como este:
/files/Group1_audiofile1.wav
/files/Group1_audiofile2.wav
/files/Group1_audiofile3.wav
/files/Group1_audiofile4.wav
/files/Group2_audiofile1.wav
/files/Group2_audiofile2.wav
/files/Group3_audiofile1.wav
/files/Group3_audiofile2.wav
..etc.
Alguma ideia? Eu sou um lixo com scripts de shell
src=/
dst=/files
for srcfile in ${src}Group*/*.wav; do
srctrimmed="${srcfile#$src}"
cp "$srcfile" "$dst/${srctrimmed/\//_}"
done
Tags bash