Talvez algo assim:
find . -name 'DE-321-DLS-R*.pdf' | sort -r | sed '1 d' | xargs mv -t "older versions"
Explicação:
-
find . -name 'DE-321-DLS-R*.pdf'
lista todos os arquivos PDF no diretório atual que começam comDE-321-DLS-R
. -
sort -r
classifica a lista de arquivos na ordem inversa . -
sed '1 d'
exibe todas as linhas de entrada, exceto a primeira. -
xargs mv -t "older versions"
chamamv
com a saída do comandosed
anterior como argumentos e informamv
para mover todos os argumentos para o diretórioolder versions
.
Exemplo:
$ ls -1
DE-321-DLS-R00.pdf
DE-321-DLS-R01.pdf
DE-321-DLS-R02.pdf
DE-321-DLS-R03.pdf
DE-321-DLS-R04.pdf
DE-321-DLS-R05.pdf
$ mkdir "older versions"
$ find . -name 'DE-321-DLS-R*.pdf' | sort -r | sed '1 d' |
xargs mv -t "older versions"
$ ls -1
DE-321-DLS-R05.pdf
older versions
$ ls -1 "older versions"
DE-321-DLS-R00.pdf
DE-321-DLS-R01.pdf
DE-321-DLS-R02.pdf
DE-321-DLS-R03.pdf
DE-321-DLS-R04.pdf