voi*_*ter 5 command-line tar gnu
我丢失了几百行我编写的 Vim 插件,并经常继续备份,因为我提取了一个tar
包含旧版本的文件。我在编写插件时决定不使用源代码控制管理,因为我只定期更新它。
为什么tar
默认覆盖现有文件之前不询问?我猜测为什么默认行为是静默覆盖文件背后有一些基本原理,因为我们通常希望安全而不是速度和便利。例如,我们通常使用#ifdef NDEBUG
, 而不是#ifdef DEBUG
; 同样,我希望tar
在覆盖任何文件之前询问我,并且它有一些标志,我可以用它告诉它在不询问我的情况下覆盖文件。另外,如何使它在tar
默认情况下确实询问我,而我不必给它任何标志?tar
如果它们支持这种更安全的默认行为,我可以使用 以外的工具。
感谢您的时间!
Sha*_*dur 10
同样的原因rm
,cp
还有一大堆其他实用程序没有——从早期开始,POSIX 设计概念一直假设控制台上的人知道他们在做什么,除非有问题,否则不会要求澄清实际问题。
在 的情况下tar
,查看手册页建议您可以尝试设置TAR_OPTIONS
env 变量以包含该--confirmation
标志。
小智 9
tar -k
选项要求确认文件是否已存在。您可以通过将其添加到TAR_OPTIONS
变量 ( TAR_OPTIONS="$TAR_OPTIONS -k"
) 或创建别名 ( alias tar="tar -k"
)来默认设置它。
归档时间: |
|
查看次数: |
7851 次 |
最近记录: |