Tar

為什麼 tar –exclude=’.*’ 創建一個空存檔?

  • October 27, 2016

我讀到的所有內容都說要在創建 tar 存檔時排除.svn和其他隱藏文件,請使用該模式。.htaccess``--exclude=".*"

當我嘗試時,我得到一個空存檔。當我省略--exclude長選項時,所有內容都會被存檔。

這是我正在使用的完整命令:

tar -czvf ../_migrate/archive_2012-05-07.tgz --exclude=".*" ./*

我也試過這個變種,結果沒有區別:

tar -czvf ../_migrate/archive_2012-05-07.tgz --exclude=".?*" ./*

您似乎正在使用 GNU tar。 GNU中的模式匹配tar適用於整個路徑,並且不會停留在/字元處。由於您使用./的是文件列表,這意味著每個文件都將匹配./*,也匹配.?*. 我會嘗試類似的東西--exclude='.[^/]*'

您的模式不包括“.”,這是您要歸檔的目錄。改用“.?*”作為模式。

引用自:https://unix.stackexchange.com/questions/38108