Estou tentando renomear um arquivo com o mv
comando e gostaria de adicionar a data da última modificação deste arquivo (com formato AAAAMMDD) no nome do arquivo e movê-lo para outra pasta. Eu obtive a data atual do sistema assim:
mv /home/user/Desktop/a.txt "/home/user/Desktop/testfolder/$(date +%Y%m%d)-a.txt"
Usei outras combinações, date
mas não entendi. Preciso saber se é possível fazer isso diretamente pela linha de comando ou preciso criar um script.
Responder1
Você pode tentar este comando:
mv /dir_path/example.txt /new_dir_path/$(date +%Y-%m-%d -r example.txt)example.txt
Responder2
Provavelmente é mais fácil acertar as coisas com um pequeno arquivo de script.
-o-
Acho que você deseja usar a data de modificação em vez da data atual, veja a saída de
ls -l a.txt
ou
ls -l --time-style=long-iso a.txt
Responder3
Obrigado, entendi! Apenas um detalhe. Se você estiver usando o comando de um caminho onde o arquivo original não está, você precisará usar isto:
mv /dir_path/example.txt /new_dir_path/$(data +%Y-%m-%d -r /dir_path/example.txt)example.txt