You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过SFTP命令查看远程服务器上ZIP文件内的所有文件?

如何通过SFTP命令查看远程服务器上ZIP文件内的所有文件?

嗨,这个问题我之前也折腾过!SFTP本质上只是个文件传输协议,它不支持直接执行unzip、zipinfo这类系统级命令,所以你才会收到“invalid command”的错误。下面给你几个可行的解决办法:

  • 最简单的方案:把ZIP文件下载到本地查看
    既然你本地是Linux系统,直接在SFTP会话里用get命令把远程的ZIP文件拉到本地,然后用本地的工具查看内容就行,步骤如下:

    # 在SFTP会话中下载远程ZIP文件到本地
    get /path/to/remote/your_file.zip
    # 退出SFTP会话后,在本地终端执行
    unzip -l your_file.zip
    # 或者用zipinfo命令,效果类似
    zipinfo your_file.zip
    

    这个方法最直接,适合文件体积不大的情况。

  • 远程执行命令(需要SSH权限)
    如果ZIP文件太大,不想耗费带宽下载,那你可以试试用SSH直接连接到远程Windows服务器,在远程环境里查看ZIP内容:

    1. 先退出当前的SFTP会话,用SSH连接远程服务器:
      ssh your_username@remote_windows_host
      
    2. 连接成功后,根据远程Windows的环境选择对应的命令:
      • 如果服务器上装了7-Zip(很多Windows服务器都会预装),可以用这个命令列出ZIP内的文件:
        7z l "C:\path\to\your\file.zip"
        
      • 如果用的是PowerShell(Windows 10/Server 2016及以上系统默认支持),可以直接通过ZIP文件的虚拟路径查看:
        Get-ChildItem -Path "C:\path\to\your\file.zip\*"
        
      • 或者用Expand-Archive的预览模式(不会真的解压文件):
        Expand-Archive -Path "C:\path\to\your\file.zip" -DestinationPath "C:\temp\zip_preview" -WhatIf
        
  • 注意事项
    要是你没有远程服务器的SSH访问权限,那只能用第一个下载到本地的方法了——毕竟SFTP协议本身就没有内置查看压缩包内容的功能。

备注:内容来源于stack exchange,提问作者B.Y.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 15:09:49