提取tar归档文件时仅更改特定所有者

我有一个tar包含两个所有者,1000和0:

$ tar tfvz archive.tgz drwxr-xr-x 1000/1000 main/ drwxr-xr-x 0/0 main/root_dir/ drwxr-xr-x 0/0 main/root_dir/home/ -rw-r--r-- 1000/1000 main/root_dir/home/file 

是否有一个简单的方法来改变拥有者1000的目录/文件的所有权? 拥有者0的人必须保持不变。

我没有在tarfind任何选项或findselect一个特定的所有者,例如tar --no-same-owner改变所有者,不仅所有者1000(我提取档案与sudo tar xfz archive.tgz允许创build根(0)目录/文件)。

您可以使用find的uid开关在解压文件后执行此操作

 find /path/to/files -uid 1000 -exec chown newuid:newgid {} +