Se você usar -print0
, tail
não funcionará porque sua saída não contém novas linhas (a menos que seus caminhos de arquivo, por algum motivo improvável).
Supondo que os arquivos não contenham uma nova linha no caminho, use o GNU find
, sort
e xargs
:
find ~/Pictures -type f -printf '%T@ %P\n' | \
sort -k 1nr | sed 's/^[^ ]* //' | head -n 1 | xargs -I {} mv "{}" ~/Dropbox
Se você tem o Zsh, é bem simples - mais uma vez, sem novas linhas permitidas:
mv -- "$(print -l **/*(.om) | head -n 1)" ~/Dropbox
Aqui, **/*
é uma glob recursiva e, entre parênteses, qualificadores :
-
.
- um arquivo regular -
o
- arquivos de classificação -
m
- por hora de modificação