monkeydev
V2EX  ›  问与答

有没有 windwos 下能够直接压缩文件,支持 Linux 下直接解压的软件

  •  
  •   monkeydev · Oct 17, 2021 · 3138 views
    This topic created in 1676 days ago, the information mentioned may be changed or developed.
    wsl 2 里面文件夹需要打包,然后上传服务器

    或者

    wsl 2 有没有办法直通外网,同步到远程服务器
    22 replies    2021-10-18 17:40:54 +08:00
    reallittoma
        1
    reallittoma  
       Oct 17, 2021 via Android
    tar?
    harwck
        2
    harwck  
       Oct 17, 2021
    直接 zip 或者 tar 都行吧
    同步到遠程服務器的話 rsync, sftp
    ch2
        3
    ch2  
       Oct 17, 2021
    zip unzip
    monkeydev
        4
    monkeydev  
    OP
       Oct 17, 2021
    @ch2 文件时视频文件,名字里有中文,所以解压不成功
    monkeydev
        5
    monkeydev  
    OP
       Oct 17, 2021
    @reallittoma
    @harwck
    @ch2
    具体情况是我在本地用 wsl 安装了 linux,然后转码,转码以后的文件名称包含中文,
    目前不知道怎么同步到远程的服务器,所以用的最笨的办法,先同步到 googledrive,然后再从 google drive 同步到服务器
    ysc3839
        6
    ysc3839  
       Oct 17, 2021 via Android
    那就 tar 吧,Win10 都自带 bsdtar 了。
    jackmod
        7
    jackmod  
       Oct 17, 2021
    zip 不是 unicode 的,需要有代码页,很麻烦。
    不考虑带宽就用 tar 无压缩,再不济还可以用 7z 。
    需要实时传输可以用 nc 。
    kksco
        8
    kksco  
       Oct 17, 2021
    unar
    monkeydev
        9
    monkeydev  
    OP
       Oct 17, 2021
    @kksco 试过不可以的
    monkeydev
        10
    monkeydev  
    OP
       Oct 17, 2021
    @jackmod 主要是文件也比较大,超过 2 个 G
    jackmod
        11
    jackmod  
       Oct 17, 2021
    @monkeydev 大号文件可以用 split/cat 命令组合来处理。文件数量大的话一如 #2 所说,尽量用 sftp/rsync
    monkeydev
        12
    monkeydev  
    OP
       Oct 17, 2021
    @jackmod 我也想用 rsync,但是 wsl 2 好像不能远程到服务器啊
    wsl 2 的网络好像一直问题啊
    jackmod
        13
    jackmod  
       Oct 17, 2021
    @monkeydev 我没用过 wsl 不太了解它的机制。
    其实如果能连到宿主机的话,可以在宿主机上开 v2fly 代理。
    jim9606
        14
    jim9606  
       Oct 17, 2021
    @jackmod 这个是因为 PKZIP 标准并没有规定默认情况用啥编码,只规定设置 Language Encoding Flag 时必须使用 UTF-8 ( PKZIP 6.3.0 )。所以确保创建 ZIP 时指定 utf-8 即可,主要是 Windows 这边要注意。
    wangkun025
        15
    wangkun025  
       Oct 17, 2021
    zip 没问题。Windows 内置 zip 工具。几乎所有的 Linux 发行版也自带了 zip 工具。
    monkeydev
        16
    monkeydev  
    OP
       Oct 17, 2021
    @jim9606
    我看不管是好压 还是 7zip 都没有压缩时候选择 UTF-8 的选项啊
    @wangkun025
    实测 zip 不行,解压的时候窗口会显示乱码符号,解压以后,文件夹内没有文件
    interim
        17
    interim  
       Oct 18, 2021
    资源管理器直接访问 wsl2 目录复制出来不就好了。
    windows 版本下 7zip 在中文环境下以 GBK 压缩,7zip 可以指定编码的。
    interim
        18
    interim  
       Oct 18, 2021
    如果你说的外网是墙外,wsl 是可以访问宿主机的代理,抑或是直接在 wsl 下安装代理软件。
    jim9606
        19
    jim9606  
       Oct 18, 2021
    @monkeydev 所以我说 Windows 这边需要特别注意,虽然 lib 支持 utf-8 但具体你用的 GUI Shell 可能不提供设置方法。
    Bandizip 是明确有这个选项的,但默认关闭。
    Windows 版 7-zip 从 21.02alpha 开始才默认在 zip 中使用 utf-8( 7-Zip now writes additional field for filename in UTF-8 encoding to zip archives. ),请确保使用 alpha 版本。
    zhuchance
        20
    zhuchance  
       Oct 18, 2021 via Android
    7z ?
    villivateur
        21
    villivateur  
       Oct 18, 2021 via Android
    zip 有乱码问题,建议 7z
    Kobayashi
        22
    Kobayashi  
       Oct 18, 2021
    @monkeydev 跨 Windows *nix 不要使用 zip,换 tar 或者 7z.
    zip 格式设计时没有考虑存储文件系统编码。*nix 下文件名、文件夹名都是 UTF-8 编码,中文 Windows 下大概是 GBK 之类的。直接解压对方压缩的 zip 时,会使用自己文件系统的编码,解压必然失败。

    如果非要死磕 zip:

    - 少量 GUI app (如 macOS 下 Entropy 和 The Unarchiver )对 zip 解压加入了编码猜测支持,而不是直接使用当前文件系统的编码。
    - 某些 TUI 支持解压 zip 时指定编码,如 unzip-iconv (patch 版 unzip, -O, -I 参数),unarchive (The Unarchiver 应用底层命令行工具,-e gb18030)
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5176 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 78ms · UTC 05:58 · PVG 13:58 · LAX 22:58 · JFK 01:58
    ♥ Do have faith in what you're doing.