[英]How do I translate the “tar” shell commands into Python
我是編程的新手,我已經獲得了將Shell命令轉換為python的任務,作為一種自動化過程的方法。 以下是命令:
$ cd /users/me/repos/
$ mv -i file file-1.0.0
$ tar cfz file-1.0.0.tgz file-1.0.0
$ mv -i file-1.0.0 file
$ tar xfz file-1.0.0.tgz
除了tar命令,我知道該怎么做。 我不確定它們做什么以及如何在Python中實現它們。
這將在路徑“ tar_path”中獲取目錄“ tar_file”,並創建一個名為“ tar_file_file.tgz”的壓縮版本。 然后將內容解壓縮到目錄“ hello”中
import os
import tarfile
from contextlib import closing
fun = "/users/me/temp/fun/"
tar_path = "{0}tar_file".format(fun)
hello = '{0}hello'.format(fun)
def makedir(dir_path):
if not os.path.exists(dir_path):
os.makedirs(dir_path)
makedir(fun)
os.chdir(fun)
makedir(hello)
#create tgz, enable gzip, create archive file
def make_tarfile(output_filename, source_dir):
with closing(tarfile.open(output_filename, "w:gz")) as tar:
tar.add(source_dir, arcname = os.path.basename(source_dir))
tar.close()
#extract, unpack in gzip format, read archived content
def extract_tarfile(output_filename, source_dir):
t = tarfile.open(output_filename, "r:gz")
t.extractall(source_dir)
make_tarfile('tar_file_file.tgz', tar_path)
extract_tarfile('tar_file_file.tgz', hello)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.