提取存储在tar存档中的先前版本的文件

时间:2013-10-03 10:35:13

标签: backup archive tar archive-tar

我有一个tar文件,其中包含同一文件的不同版本,如何提取该文件的先前版本之一(而不是最新版本)?

以下是如何创建测试tar文件:

创建测试目录

tal@backup:~/tmp$ mkdir test

创建测试文件

tal@backup:~/tmp$ echo line 1 > test/test.txt

创建包含测试文件的tar文件

tal@backup:~/tmp$ tar -cvf test.tar test/*

返回

test/test.txt

检查更改

tal@backup:~/tmp$ tar -dvf test.tar test/*

返回(尚无)

test/test.txt

更改测试文件

tal@backup:~/tmp$ echo line 2 >> test/test.txt

检查更改

tal@backup:~/tmp$ tar -dvf test.tar test/*

返回(魔术:文件已更改)

test/test.txt
test/test.txt: Mod time differs
test/test.txt: Size differs

更新tar文件

tal@backup:~/tmp$ tar -uvf test.tar test/*

返回

test/test.txt

检查更改

tal@backup:~/tmp$ tar -dvf test.tar test/*

返回(两个版本都存在)

test/test.txt
test/test.txt: Mod time differs
test/test.txt: Size differs
test/test.txt

谢谢, 塔尔

1 个答案:

答案 0 :(得分:0)

解决:

<强> - 发生= N

n - [0 ..版本数量]

  • 0 - 最后一个(默认)
  • 1 ..版本号 - 是实际的版本号
  • 如果n大于版本数,则
  • 错误确定

示例

tar -xvf test.tar --occurrence=1 test/test.txt

谢谢, 塔尔