为了寻找实际原因,命令 tar -c/filea >/fileb
给出了以下输出:tar:Removing_leading/
from member names。
我已经对其进行了相当多的研究,但只遇到了非常模糊的原因,例如防止某种攻击等。大多数人只是在您需要时提供解决方法的解释。
我不想要解决方法。我只是好奇它发生的实际原因。任何帮助将不胜感激。
最佳答案
这有助于避免可能导致重要文件被覆盖的错误。文件通常是相对于 tar 命令的当前工作目录提取的。
只是例子:
如果你归档/etc/httpd 这个目录,它会删除前导/。因为。如果在提取当前/etc/httpd 后它存在,将被存档/etc/httpd 覆盖。
删除前导的“/”后,它会解压缩到您的工作目录中。如果你解压到/var/tmp 目录,它将保存为/var/tmp/etc/httpd
关于linux - 为什么 tar -c 命令从成员名称中删除前导 `/',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40732238/