Featured image of post Windows 远程与浏览器工具链:Xshell / FileZilla / Chrome / 文件处理

Windows 远程与浏览器工具链:Xshell / FileZilla / Chrome / 文件处理

Windows 远程连接与浏览器工具实战:Xshell SSH 会话、FileZilla FTP/SFTP、Chrome 代理与扩展、Graphviz 绘图、Tesseract OCR 文字识别、Zhexi 文本处理

一、Windows 远程办公三件套

2013 年的远程办公还远没有 2020 年后那么"云原生"——Windows 上远程服务器、传文件、查文档的常规动作还是靠Xshell + FileZilla + Chrome这三条腿。本文整理这三条腿的实战细节,外加 Graphviz 绘图Tesseract OCR 文字识别Zhexi 文本处理等"工具"。

二、Xshell:Windows 最好的 SSH 客户端

2.1 安装

Xshell 是 NetSarang 出品的商业 SSH 客户端。个人/学校免费版到官网 https://www.xshell.com/ 下载,5.x 起对个人/非商业用户免费。安装时取消勾选"Xftp"等捆绑(按需选装)。

2.2 新建 SSH 会话

  1. 文件 → 新建 → 名称 + 主机 + 端口(默认 22)
  2. 用户身份验证 → 填用户名 + 密码
  3. 保持活动状态 → 勾选"发送保持活动消息"(避免 NAT 断开)
  4. 外观 → 字体 → Consolas 10pt(中英文都好看

企业实战技巧

  • 保存密码:Xshell 7+ 取消"明文保存",用 Master Password 加密
  • 登录脚本登录脚本 标签 → 添加 expect 脚本处理二次验证
  • 代理跳板隧道 → TCP 转发,配合 Xshell 的"跳板"功能穿透堡垒机

2.3 SSH 密钥登录(比密码更安全)

  1. 工具 → 用户密钥管理者 → 生成 → RSA 2048 / Ed25519
  2. 导出公钥 → 复制到服务器的 ~/.ssh/authorized_keys
  3. 终端 → 用户身份验证 → 选 Public Key
1
2
3
4
# 服务器端一键添加
mkdir -p ~/.ssh && chmod 700 ~/.ssh
echo "ssh-rsa AAAA...公钥内容...== user@host" >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

2.4 常用快捷键

快捷键作用
Alt + Enter全屏
Ctrl + Shift + T新建标签页
Alt + 数字切换到第 N 个标签
Ctrl + Insert / Shift + Insert复制 / 粘贴(Xshell 默认)
Ctrl + L清屏

2.5 性能调优

  • 连接 → SSH 勾选 Compression(慢网加速)
  • 高级 → 终端xterm-256color(颜色更丰富)
  • 高级 → 键盘Backspace = ASCII 127(兼容 vim)

三、FileZilla:FTP / SFTP 文件传输

3.1 安装

FileZilla 分两个版本:

  • FileZilla Client:免费开源,推荐
  • FileZilla Server:开源但商业部署要付费

官方 https://filezilla-project.org/ 下载 Client,安装时取消勾选"金山毒霸"等捆绑

3.2 SFTP 连接

文件 → 站点管理器 → 新站点

  • 协议:SFTP(不是 FTP)
  • 主机 + 端口(22)
  • 登录类型:正常 / 密钥文件
  • 字符集:UTF-8(避免中文乱码)

注意SFTP 和 FTPS 是两个完全不同的协议。SFTP 走 SSH(端口 22),FTPS 走 SSL/TLS(端口 990)。现代实践全部用 SFTP

3.3 传输优化

编辑 → 设置 → 传输

  • 最大并发传输数:10
  • 最大并发连接数:10
  • 分块大小:加大到 1 MB(大文件更快)
  • 失败重试:5 次

3.4 排错:连接超时

  • 被动模式(PASV)/ 主动模式(PORT):服务器在 NAT 后,客户端必须用主动模式
  • SSL 警告:自签名证书第一次会弹"未受信任",勾选"始终信任"
  • 文件名乱码:服务器用 GBK,客户端用 UTF-8 就会乱码——切换字符集

四、Google Chrome:开发者浏览器

4.1 安装与去广告

官方 https://www.google.com/chrome/ 下载,安装时取消勾选"将 Chrome 设为默认浏览器"如果不想换默认。Chrome 自身无内置广告(主要担心的是 360 安全浏览器那种"推荐")。

4.2 开发者必备扩展

扩展用途
JSON Viewer / JSONVue美化 JSON 响应
Vue Devtools / React Devtools前端框架调试
Postman Interceptor配合 Postman 拦截请求
SwitchyOmega代理切换(开发环境必备)
EditThisCookie快速编辑 Cookie
User-Agent Switcher切换 UA 模拟移动端

4.3 代理与 SOCKS5

Chrome 系统代理走 IE 设置。如果需要按站点分流:

1
2
# 用 SwitchyOmega 配置:直连 / 代理 / 自动切换
# 代理规则:file:///C:/path/to/auto_switch.pac

auto_switch.pac

1
2
3
4
5
6
function FindProxyForURL(url, host) {
    if (dnsDomainIs(host, "internal.example.com")) {
        return "SOCKS5 127.0.0.1:1080";
    }
    return "DIRECT";
}

4.4 调试模式

chrome://flags 是隐藏实验室开关,对终端用户慎用。常用:

  • chrome://flags/#smooth-scrolling 平滑滚动
  • chrome://flags/#enable-parallel-downloading 并行下载(对慢网很有效
  • chrome://discards 查看标签页休眠状态

4.5 抓包工具联动

Chrome DevTools 的 Network 标签抓 HTTPS 请求需要导出。配合外部抓包工具([2016-11-15 数据库客户端] 中提到的 Fiddler)才能抓到 native 应用流量。

五、Graphviz:代码画流程图

5.1 定位

Graphviz 1991 年起源 AT&T 贝尔实验室,用 DOT 语言描述图,自动布局dot / neato / fdp / circo 四个布局引擎适应不同场景。

5.2 安装

  • 官方 https://www.graphviz.org/download/ 下载 Windows msi
  • 装好后C:\Program Files\Graphviz\bin 加到 PATH

5.3 DOT 语言基础

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
digraph hello {
    rankdir=LR;  // 从左到右布局
    node [shape=box style="rounded,filled" fillcolor=lightblue];
    
    Start [shape=ellipse fillcolor=lightgreen];
    End [shape=ellipse fillcolor=lightcoral];
    
    Start -> "读取配置" -> "解析参数" -> "执行业务" -> End;
    "解析参数" -> "参数错误" [label="失败" color=red];
    "参数错误" -> End;
}

5.4 PlantUML 集成

PlantUML 内部用 Graphviz 渲染 .puml 文件:

1
PlantUML 渲染器路径:C:\soft\Graphviz\bin\dot.exe

VSCode 装 PlantUML 扩展 → 设置 plantuml.renderPlantUMLServerLocalLocal 模式必须装 Graphviz

六、Tesseract OCR:免费文字识别

6.1 定位

Tesseract 是 HP 实验室 1985-1995 年开发、2005 年开源的 OCR 引擎。Google 维护至今,支持 100+ 语言。对印刷体识别率 95%+,对手写体效果一般。

6.2 Windows 安装

  • 官方 https://github.com/UB-Mannheim/tesseract/wiki 提供 Windows 安装包
  • 安装时勾选中文语言包chi_sim(简体)、chi_tra(繁体)
  • 装好后 tesseract --list-langs 验证

6.3 命令行用法

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# 识别单张图(中英文)
tesseract input.png output -l chi_sim+eng

# 识别 PDF
tesseract input.pdf output -l chi_sim+eng

# 输出为 hOCR(带坐标的 HTML)
tesseract input.png output hocr

# 输出为 TSV(表格友好)
tesseract input.png output tsv

6.4 Python 绑定

1
2
3
4
5
6
import pytesseract
from PIL import Image

img = Image.open("screenshot.png")
text = pytesseract.image_to_string(img, lang="chi_sim+eng")
print(text)

6.5 提升识别率

  • 预处理:二值化(cv2.threshold)、降噪(cv2.medianBlur)、倾斜矫正
  • DPI 至少 300:扫描 PDF 转图
  • 分语言模型:中文 + 英文组合,比单一语言更准

七、Zhexi:文本处理小工具

7.1 定位

Zhexi 是 2018 年由个人开发者 https://gitee.com/longwen-zhexi/zhexi 维护的轻量文本批量处理工具常用于

  • 批量重命名文件
  • 批量替换文本
  • 提取日志关键字段
  • 大文件按行分割

7.2 典型用法

1
2
3
4
5
6
7
8
# 批量重命名
zhexi rename --pattern "IMG_(\d+).jpg" --replace "photo-$1.jpg" --dir ./photos

# 大文件按行分割
zhexi split --input big.log --lines 10000 --prefix chunk-

# 提取 IPv4
zhexi extract --pattern "\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b" --input access.log

八、组合实战

8.1 远程调试 Java 应用

  1. Xshell SSH 到测试服务器
  2. tail -f catalina.out 看实时日志
  3. Tesseract 截图识别 → 提取关键错误
  4. Chrome + Fiddler 复现问题

8.2 批量运维脚本

  1. FileZilla 传脚本
  2. Xshell 标签页多机器并发执行
  3. Zhexi 处理输出日志
  4. Graphviz 把"服务器状态图"画出来

九、常见问题

9.1 Xshell 突然不能复制粘贴

  • 检查 工具 → 选项 → 键盘和鼠标 → 中间键 设置
  • 重启 Xshell(最暴力但有效)
  • 检查是否启用了"宏"——工具 → 宏 → 录制宏 可能误占用剪贴板

9.2 FileZilla “无法连接到服务器”

  • 防火墙是否放行 22 端口
  • 服务器端 /etc/ssh/sshd_configPasswordAuthentication yes
  • 客户端 连接超时 调大到 60s

9.3 Chrome 启动慢

chrome://flags/#enable-site-per-process 关闭能加速但牺牲安全chrome://settings/clearBrowserData 清掉过多缓存。

9.4 Graphviz 中文乱码

1
2
3
4
digraph G {
    node [fontname="Microsoft YaHei"];
    "开始" -> "处理" -> "结束";
}

或者 dot -Tpng:cairo:file 用 cairo 后端。

9.5 Tesseract 中文识别率低

  • chi_sim + eng 混合模型
  • 图像预处理(OpenCV 二值化)
  • --psm 6 假设是单块文本

十、下一步

  • 想看数据库连接:[2013-09-15 Windows 终端与 Navicat 工具链]
  • 想看抓包调试:[2016-11-15 数据库客户端实战:MySQL / Redis / ES / MQTT]
  • 想看 Git 工作流:[2014-11-15 Git 与版本控制]

本文写于 2013 年,回看当时:Xshell 至今仍是 Windows SSH 客户端的事实标准,FileZilla 仍是 FTP/SFTP 首选;Chrome 早就吃掉了 IE 份额,但 2013 年兼容 IE 6-8 仍是 Web 开发的必备技能——这篇工具链 10 年后大部分仍然适用。

使用 Hugo 构建
主题 StackJimmy 设计