Answers:
在GNU tar中,--transform
(--xform
)是进行文件名转换的选项。文档和示例可以在这里找到
-s
在OSX的tar上看起来很相似
--transform=expression
在提取时花了很多时间来解释,但没有提到添加时间(这是提出的实际问题)。
在BSD tar中,-s pattern
是进行名称转换的选项。引用freebsd.org文档:
-s pattern
Modify file or archive member names according to pattern. The
pattern has the format /old/new/[ghHprRsS] where old is a basic
regular expression, new is the replacement string of the matched
part, and the optional trailing letters modify how the replace-
ment is handled. If old is not matched, the pattern is skipped.
Within new, ~ is substituted with the match, \1 to \9 with the
content of the corresponding captured group. The optional trail-
ing g specifies that matching should continue after the matched
part and stop on the first unmatched pattern. The optional
trailing s specifies that the pattern applies to the value of
symbolic links. The optional trailing p specifies that after a
successful substitution the original path name and the new path
name should be printed to standard error. Optional trailing H,
R, or S characters suppress substitutions for hardlink targets,
regular filenames, or symlink targets, respectively. Optional
trailing h, r, or s characters enable substitutions for hardlink
targets, regular filenames, or symlink targets, respectively.
The default is hrs which applies substitutions to all names. In
particular, it is never necessary to specify h, r, or s.
-s
选项可以做到这一点,但现在没有时间写出完整的答案。