tar 中的文件名有问题

Having trouble with filenames in tar

我在处理与 tar 反应的文件名中的转义字符时遇到问题。由于我正在移动的数据的性质,它们无法被删除。无论我如何格式化我的转义字符,它似乎都将 .file 和 \.file 视为同一件事。

例如:

文件内容

namefile1 包含 \.file

namefile2 包含 \\.file

出现的命令及其输出:

tar -cvzf "./exampleout.tar" -C . -T namefile1
\.file

tar -cvzf "./exampleout.tar" -C . -T namefile2
\.file

如果我尝试列出其中一个,我会得到这个。

tar -tvf ./exampleout.tar
\.file

我想我已经解决了我的问题。如果你的文件名中有 \,即使你通过文件传递它,你仍然必须转义它。即使在某些测试用例中只需要一个,也是使其始终如一地工作的唯一方法。如果您尝试列出 tar 文件的内容,它会将其列为文件中的任何内容,但如果您恢复它,则如果您能够设法找到 tar 会拿。