Eu gero de tempos em tempos, em um diretório, um arquivo como pi-hole-srv-teleporter_2024-08-27_13-59-16.tar.gz
. Mas às vezes há dois ou mais seguindo o mesmo modelo de nomenclatura (com datas/horários diferentes).
Em algum momento, eu gostaria de mover um dos arquivos para o diretório /backup
e definir seu nome como /backup/teleporter.tar.gz
. Não me importa qual arquivo é (e geralmente será apenas um único arquivo, mas isso não é garantido).
Existe uma maneira inteligente de fazer essa operação de selecionar/renomear/mover com o shell (bash) antes de começar a reinventar a roda com algum script Python?
Retirado de: https://askubuntu.com/questions/845625/moving-only-the-first-file-from-any-directory-to-current-one
Se você quiser mover apenas o primeiro arquivo em um diretório, para o diretório de trabalho atual, você pode usar for, porque ele faz um loop sobre os arquivos de forma ordenada. Substitua
/path/to/
pelo caminho real para o diretório com os arquivos de teletransporte. Você pode testá-lo primeiro como prefixandomv
comecho
:Isso encontrará o primeiro arquivo em POSCARS e simulará movê-lo para o diretório de trabalho atual. Se ele mostrar o que você quer, então execute novamente o comando sem echo para realmente mover o arquivo:
mv -v --
mova o arquivo e relate a ação, então não aceite mais opções.
é o diretório de trabalho atualbreak
significa quebrar o loop após a primeira iteração, então ele irá parar de mover arquivos após encontrar o primeiro