【问题标题】:Extract a previous version of file that is stored within a tar archive提取存储在 tar 存档中的文件的先前版本
【发布时间】:2013-10-03 10:35:12
【问题描述】:

我有一个 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

谢谢, 塔尔

【问题讨论】:

    标签: backup archive tar archive-tar


    【解决方案1】:

    已解决:

    --occurrence=n

    n - [0 .. 版本数]

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

    示例

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

    谢谢, 塔尔

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-04
      • 2013-10-16
      • 2014-09-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-20
      相关资源
      最近更新 更多