1

pythons を使用tarfile.extractall()して foo.tar.gz ファイルを解凍しています。解凍したフォルダにアクセスしたいのですが、解凍したフォルダと圧縮ファイルの名前が違う場合があります。抽出されたフォルダーの名前を制御する方法、または抽出されたフォルダーの名前を示す戻り値が必要です。

パックされたファイル:foo-rc-2.0.0.tar.gz

解凍したフォルダ:foo-2.0.0-rc

4

2 に答える 2

1

tarfile.extractall()tarball 内のすべてのファイルを現在のディレクトリまたは選択したディレクトリに展開するだけです。

tarball にネストされたディレクトリ構造を持つファイルが含まれている場合、それが抽出されます。表示されるのはそのディレクトリ構造です。これらのディレクトリの名前 (複数存在する可能性があります) は、tarball の名前と一致している必要はありません。

これらの抽出されたコンテンツを移動する必要がある場合は、新しい空のディレクトリに移動して、そのディレクトリ内のすべてのものを取得できるようにします。

os.mkdir('extraction')
tarball.extractall('extraction')
for name in os.listdir('extraction'):
     # move that name.
于 2015-10-05T15:38:38.247 に答える