编写一个 bash 脚本,将文件复制到新副本具有相同名称的目录中,但在文件名后附加时间戳(在扩展名之前)。
我怎样才能实现这个目标?
最佳答案
要将文件本身的时间戳插入到原始文件名中,并在目标文件中保留该时间戳,请在 GNU 环境中执行以下操作:
file="/some/dir/path-to-file.xxx"; cp -p "$file" "${file%.*}-$(date -r"$file" '+%Y%m%d-%H%M%S').${file##*.}"
在混合中添加正确使用 basename(1) 命令将允许您将文件复制到不同的目录中。
在 GNU/Linux 环境之外执行此操作更具挑战性,您必须开始访问 awk、perl、python 甚至 php 等语言来替换 date -r
命令。
关于linux - 如何使用新名称制作文件的副本,并在文件名中包含原始文件的时间戳?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38554000/