使用时间戳在unix中重命名文件命令

Pav*_*kar 13 unix linux shell

您好我正在使用putty并尝试使用当前时间戳重命名文件名...我已使用以下命令重命名文件并根据日期mv abc.log $(date +%F)prod.txt

上面的命令重命名但不能随时间重命名,它将输出为:2014-05-12prodabc.log

并遵循命令abc.log $(date +%y)$(date +%m)$(date +%d)abcprod.log

输出为:140512abc.log

实际上我的要求如下.

rename abc.log to abc-current timestamp.log 
e.g abc.log  become  abc-12-05-2014-17:31.log
then create new file abc.log
Run Code Online (Sandbox Code Playgroud)

请帮忙,提前感谢你们..

Pat*_*ick 25

您可以使用

mv test.dat test_$(date +%d-%m-%Y).dat
Run Code Online (Sandbox Code Playgroud)

如果您想知道如何控制输出,请查看日期Manpages ..

man date 
Run Code Online (Sandbox Code Playgroud)


sat*_*sat 8

用这个:

mv abc.log $(date +%F-%H:%M).log && touch abc.log
Run Code Online (Sandbox Code Playgroud)

这里,

+%F-%H:%M会给你一个像这样的格式2014-05-19-14:47.如果重命名已成功完成,touch将创建一个新的空文件.