Python研究ノート:アプリケーションの記事:圧縮パッケージのバッチ解凍の実装(WinRAR、python、cmd、)

python、cmd、batでの圧縮パッケージのバッチ解凍の実装

1. WinRARを使用して解凍する前に、まずコマンド環境を構成する必要があります

「WinRAR」コマンドをコンソールウィンドウに直接入力すると、「WinRAR」は内部または外部のコマンドではなく、実行可能なプログラムやバッチファイルでもありません。これは、WinRAR.exeファイルがパスに従って呼び出されない限り、コンソールがこのコマンドを呼び出せないためです。WinRAR解凍ソフトウェアをコンソールで直接呼び出す場合は、最初にパスを追加する必要があります。コンピューターを右クリックして、[プロパティ]→[システムの詳細設定]→[環境変数]→[システム変数]→[パス]をダブルクリックし、次のようにWinRARの新しいパスを作成します。
環境変数
システム変数
パス追加
追加されたパスは、コンピューターへのWinRARソフトウェアのインストール場所です。ブロガーのパスは次のとおりです: "D:\ Program File(x86)\ WinRAR \"
パスを追加した後、コンソールで「WinRAR」コマンドを入力し、 WinRAR.exeプログラムを直接開くことができ
コマンド実行
ます。上記の操作が完了したら、バッチ解凍を開始できます。

2. pythonを使用して、圧縮パッケージの名前に従ってファイルを解凍します(パスとファイル管理を調整します)

ブロガーは.NETからpythonに移行したため、コードの読み取りと管理を容易にするmain関数を作成する習慣を身につけました。この構造はPythonではオプションです。自分の習慣に従ってコードを整理できます。次のコードでは、パスに従ってファイル名が読み取られ、サフィックスが解釈されます。これにより、圧縮ファイルが元の圧縮ファイル名に従ってソートされる解凍方法が実現されます。

#导入库
import os

#全局变量
List_Fname=[]

"""函数区"""
#获取文件夹下的文件名
def listdir(path, list_name):
    for file in os.listdir(path):
         if file[-4:] == ".tgz":#字符串切片
            list_name.append(file)
    return  list_name


"""主函数区"""
def main():
    source_dir="H:\\测试\\"
    listdir(source_dir, List_Fname)

    #创建压缩包文件存储路径及文件名
    unzip_dir=source_dir+"unzip\\"
    #window RAR解压缩命令
    for file in List_Fname:
    	#必须使用这种格式,使用+进行字符连接时,因为语言中转义字符的存在会出现路径识别时的错误。
        rar_command ='"D:\Program Files(x86)\WinRAR\WinRAR.exe" x %s * %s\\'%(source_dir+file, unzip_dir+file)
        os.system(rar_command)


"""主函数调用"""
main()

Comamdのフォーマットに注意する価値があります。上記の注を参照してください。

3.コンソールまたは.batを使用して、このパスにあるすべての.tgz圧縮ファイルを同じフォルダーに解凍します。

(1)コンソールの実装

「WinRAR x [圧縮ファイル] [抽出パス]」を使用して、以下を実現します。
コンソールの実装

(2)txt + bat実装

圧縮されていないファイルが元のファイル名に従って並べ替えられていない場合、ブロガーはこの方法を実装に推奨します。.batファイルを直接コピーして貼り付けることができるため、ファイルのパスを覚える必要はなく、WinRARを介したパスだけを覚えておく必要があります。追加するだけで、より便利に使えます。
文法
ファイルのサフィックス.txtを.batに変更し、ダブルクリックして実行します。
実行する

8件の元の記事を公開 16 件を獲得・4 万回以上の閲覧

おすすめ

転載: blog.csdn.net/knkn123/article/details/83020382