如何从命令" docker change"中知道文件。是常规文件或目录

时间:2015-12-15 19:55:11

标签: docker

我们可以从命令" docker containerID change"获取文件列表。观察容器的变化。我可以知道列表中的每个文件都是常规文件或目录吗?

输入" GET / containers / 4fa6e0f0c678 /更改HTTP / 1.1

输出: HTTP / 1.1 200好的 Content-Type:application / json

[      {              "路径":" / dev",              "种类":0      },      {              "路径":" / dev / kmsg",              "亲切":1      },      {              "路径":" / test",              "亲切":1      } ]

1 个答案:

答案 0 :(得分:0)

docker change api的输出是所有已修改文件/目录的列表。在linux中修改文件时,它的目录也会被修改。如果您只需要提取文件,则可以删除所有使用其名称区分的父项。像这样:

考虑更改文件名/use/share/my_file。它在api中显示为:

[{ "Path": "/usr/share/my_file", "Kind": 0 },  
 { "Path": "/usr/share", "Kind": 0 },  
 { "Path": "/usr", "Kind": 0 }]

因此,如果您只想提取文件,您应该拆分每个路径并检入任何一个是它的父级:

["usr","share","my_file"],["usr","share"],["usr"]

甚至更简单,foreach Path,删除此路径中包含的所有路径:

/usr/share

/usr包含在第一个中,因此您可以删除它。 对于/usr/share/my_file/usr/usr/share包含在路径中并且可以删除。

开始自己动手,如果仍有问题,我们可以帮助解决。