Centos使用unrar解壓rar壓縮包


在Centos上安裝unrar並直接使用

  1. rarlab官網找到相應的版本進行下載,我使用的版本是RAR 6.00 for Linux x64

    wget https://www.rarlab.com/rar/rarlinux-x64-6.0.0.tar.gz
    
  2. 解壓到指定目錄

    tar xf rarlinux-x64-6.0.0.tar.gz -C /usr/local/
    
  3. 創建軟鏈接

    ln -s /usr/local/rar/rar /usr/local/bin/rar
    ln -s /usr/local/rar/unrar /usr/local/bin/unrar
    
  4. 常用的解壓命令unrar <命令> <壓縮包>

    # 解壓壓縮文件到當前目錄
    unrar e test.rar
    # 用絕對路徑解壓文件
    unrar x test.rar
    # 列出壓縮包中的文件列表信息(簡單)
    unrar l test.rar
    # 列出壓縮包中的文件列表信息(詳細)
    unrar v test.rar
    # 測試壓縮文件
    unrar t test.rar
    

    想了解更多unrar的用法可以在linux命令手冊上面查看

通過python執行unrar的相關操作

  1. 安裝unrar庫

    pip3 install unrar
    

    python3 -m pip install unrar
    
  2. 運行以下代碼

    from unrar import rarfile
    

    如果運行沒問題則證明安裝成功,如果報Couldn't find path to unrar library則還需要系統編譯安裝unrar

  3. 安裝依賴包

    yum install -y gcc gcc-c++
    
  4. 下載unrar包

    wget http://www.rarlab.com/rar/unrarsrc-5.4.5.tar.gz
    tar zxf unrarsrc-5.4.5.tar.gz
    cd unrar
    
  5. 編譯、安裝

    make lib
    make install-lib
    

    使用make lib命令將會自動編譯庫文件,再使用make install-lib命令產生 libunrar.so 文件(一般在 /usr/lib 目錄下面)

  6. 配置環境變量

    vim /etc/profile
    

    在末尾加上以下語句並保存

    export UNRAR_LIB_PATH=/usr/lib/libunrar.so
    

    使用以下命令使變量生效

    source /etc/profile
    

    再次執行第二步就不會報錯了

  7. 簡單代碼示例

    from unrar import rarfile
    
    
    rar = rarfile.RarFile('sample.rar')
    print(rar.namelist())  # 壓縮包的文件列表
    
    rar.printdir()  # 打印壓縮包的文件信息(詳細)
    
    info = rar.infolist() # 文件信息迭代器對象列表
    for f in info:
        print(f.filename, f.file_size, f.date_time)  # 文件名 文件大小 修改時間
    
    rar.extractall()  # 解壓
    

    想了解更多可以去python-unrar官方文檔上查看


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM