find -name "*.avi" |
while read -r file; do
mv -v "$file" "${file%/*/*}"
done
Eu preciso mover todos os arquivos de vídeos em uma árvore de arquivos para as pastas pai, por exemplo:
origem:
A--sub1--file1
file2
sub2--file3
--file4
sub3--file5
B--sub1--file1
file2
sub2--file3
--file4
sub3--file5
...
de que preciso:
A--file1
file2
file3
file4
file5
B--file1
file2
file3
file4
file5
...
Estou tentando usar o shell script, e o que estou fazendo é:
for file in 'find -name *avi'; do something ; done
Eu gostaria de usar o nome do arquivo que recebo de find -name *avi
para obter o caminho da pasta pai, que é a parte antes do segundo último '/'. Mas eu não sei como consegui-lo usando o shell script, o regex pode ajudar, mas eu não tenho ideia de como, qualquer um ajuda?
Tags shell-script