Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 我该如何翻译这句话;焦油“;将命令shell转换为Python_Linux_Shell_Python_Tar - Fatal编程技术网

Linux 我该如何翻译这句话;焦油“;将命令shell转换为Python

Linux 我该如何翻译这句话;焦油“;将命令shell转换为Python,linux,shell,python,tar,Linux,Shell,Python,Tar,我是编程新手,我的任务是将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

我是编程新手,我的任务是将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)

你检查了吗?是的,我已经知道了如何创建.tgz文件,但我仍然不知道“tar xfz”在python中做什么以及如何做。我认为它只是提取文件。当一个shell脚本已经完成了你需要的任务时,这项任务的意义是什么?用python自动化手动过程的意义是什么。