繁体   English   中英

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

[英]Rename file command in Unix with timestamp

您好,我正在使用 Putty 并尝试使用当前时间戳重命名文件名。

我使用以下命令重命名文件并根据日期

mv abc.log $(date +%F)prod.txt

上面的命令重命名但不能随时间重命名,它给出的输出为

2014-05-12prodabc.log

并遵循以下命令

abc.log $(date +%y)$(date +%m)$(date +%d)abcprod.log

给出输出为

140512abc.log

其实我的要求如下:

  • abc.log重命名为abc-<current timestamp>.log
    • 例如abc.log变成abc-12-05-2014-17:31.log
  • 然后创建新文件abc.log

请帮忙,先谢谢大家。

您可以使用

mv test.dat test_$(date +%d-%m-%Y).dat

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

man date 

用这个:

mv abc.log $(date +%F-%H:%M).log && touch abc.log

这里,

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

这个:

 str=abc; mv ${str}.log ${str}-$(date +%F'-'%T).log

如果您使用 cPanel 创建 cron 作业:请注意您需要为 % 使用反斜杠。 这是有效的:cp log.txt 日志。 date +"\\%d\\%m\\%Y" .txt

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM