我想.tar在一周中的每一天制作一个特定目录的文件。我想这样做的方式是使用 bash 脚本每天使用 crontab 制作一个 tar 文件。
我想知道,有没有办法调节 bash 脚本生成的 tar 文件的名称?现在每次创建文件时都是一样的,因为 bash 只有一个命令:tar -cvf file.tar /home/name/folder/
但我想为它根据当天如稍有不同的充FileTus.tar,FileWed.tar,FileFri.tar,等。
有没有办法通过终端命令来做到这一点?
谢谢
该date命令可以以您想要的任何格式将日期作为文本生成。然后,您将在脚本中使用它,例如:
tar -cvf File$(date +%a).tar /home/name/folder
Run Code Online (Sandbox Code Playgroud)
这将产生FileMon.tar,FileTue.tar如上所述。有关man date它可以生成的不同日期格式的说明,请参见。
为什么不使用完整的日期格式而不只是日期名称呢?这样就不会每周生成相同的文件名:)
像这样的东西 -
nits@excalibur:~$ tar -cvf /home/nits/Desktop/File$(date +%d%B%Y).tar Music/
Run Code Online (Sandbox Code Playgroud)
会产生这样的输出 -
nits@excalibur:~$ ls ~/Desktop/
File14August2012.tar
Run Code Online (Sandbox Code Playgroud)
对于带有时间戳的内容(如评论中所要求的):
nits@excalibur:~$ tar -cvf "/home/nits/Desktop/File$(date +%d%B%Y_%H:%M).tar" Music/
nits@excalibur:~$ ls ~/Desktop/
File14August2012_20:14.tar
Run Code Online (Sandbox Code Playgroud)