Linux基础 Windows Terminal终端和Filezilla FTP客户端
本文最后更新于 23 天前,如有失效请评论区留言。

本博客由ZGOCLOUD大力赞助!如何更快地访问本站?有需要可加电报群获得更多帮助。本博客用什么VPS?创作不易,请支持苯苯!推荐购买本博客的VIP喔,10元/年即可畅享所有VIP专属内容!

前言

本教程仅在Windows10/11操作系统测试成功;未在MacOS和Linux测试。

学习Linux或者玩VPS,应该使用一个好的方案,以方便与服务器进行命令行交互和文件传输。此前在《VSCode作为终端工具替代FinalShell和MobaXterm》中我已简单介绍过Windows Terminal + FileZilla方案。如果您是Windows 10或以上的用户,Windows Terminal + FileZilla是一个值得推荐的免费、高颜值、高度自定义的终端+FTP方案:

  • Windows Terminal:终端工具,Shell;主要用于命令行交互,一般不能直接传输文件:

WindowsTerminal_VnRGtazXrb

  • FileZilla:专门通过SFTP在本地与VPS之间传输文件,但一般不能进行命令行交互:

filezilla_KUEim8BNa9

准备工作

基于密钥对的服务器访问

您应该熟练掌握《Linux基础 基于密钥对的SSH远程登陆》的内容——因为这两个软件最方便、最安全的方式就是通过密钥文件访问远程服务器(VPS等)。

我个人感觉使用Windows Terminal使用帐户+密码的方式并不方便;有不同见解的小伙伴欢迎在评论区留言哈!

文本编辑器

安装好Notepad++VSCode等可以查看JSON格式等文本的编辑器。我个人比较喜欢Notepad++

notepad++_sqrIHHxYlU

VSCode由于Python、LaTeX等编程工作的需要,我一般都是安装了的。

Meslo字体

为了配合oh-my-posh,建议使用 MesloLGS Nerd Font Mono。该字体不是系统自带的,需要手动安装(下载地址,包含Meslo系列字体)。下载后字体可以批量安装:

ogKm0N81N4

我们可以在个性化——字体中搜索字体的系统名称。比如,我用的是MesloLGS Nerd Font Mono

ApplicationFrameHost_PrvTpl5u66

这个字体对于OhMyPosh的支持比较好一些,不容易出现乱码。

Windows Terminal

安装软件

咱们直接下载最新版,此时是v1.19.10821.0

msedge_toj4nI9XEZ

安装OhMyPosh

OhMyPosh是一个Shell的美化工具,这样可以让Windows Terminal有类似OhMyZsh的外观:

WindowsTerminal_Np3nHqeKCm

打开Windows Terminal,在微软商店里安装JanDeDobbeleer.OhMyPosh

# winget install --id JanDeDobbeleer.OhMyPosh
winget install --id XP8K0HKJFRXGCK --source msstore

设置OhMyPosh的主题。新建一个profile配置文件:

notepad $PROFILE

添加主题的自启动命令:

oh-my-posh init pwsh --config $env:POSH_THEMES_PATH\montys.omp.json | Invoke-Expression

Ctrl+s保存。重启Windows Terminal即可。

注意事项:

  • montys.omp.json等部分主题要添加下列命令才可以显示conda环境(有时也不能成功,有懂的小伙伴指导一下嘛 (~ ̄▽ ̄)~ )
{
  "background": "#306998",
  "foreground": "#FFE873",
  "leading_diamond": "\ue0b2",
  "style": "powerline",
  "template": "\ue235  {{ if .Error }}{{ .Error }}{{ else }}{{ if .Venv }}{{ .Venv }} {{ end }}{{ .Full }}{{ end }}",
  "trailing_diamond": "<transparent,#306998>\ue0b2</>",
  "type": "python"
},

JSON配置文件

我个人比较喜欢的特性,即设置可以通过JSON文件直接编辑(这一点类似于VSCode)。根据经验,大多数设置都可以直接在JSON文件中定义。如图,打开设置

WindowsTerminal_z2wtpoDyti

左下角即有一个打开JSON文件的选项:

WindowsTerminal_IDfZULCBLP

点击后,类似这样:

Code_6dQ4FjV448

这里是一个JSON文件的示例:

此隐藏内容仅限VIP查看。包年VIP仅10元,建议升级。VIP可享有哪些特权

这个文件中,profiles的部分内容是最值得关注的:

默认设置

"defaults"下面的内容

  • 通过调节opacitybackgroundImageOpacity可以获得满意的透明度显示。
"initialCols": 140,  // 窗口宽
"initialRows": 42,  // 窗口高
"initialPosition": "300,20",  // 设置窗口默认打开位置
"multiLinePasteWarning": false,
"mouseWheelScrollsLines": true,
"scrollWheelMoveMultiplier": 1,
"defaults": {
    "useAcrylic": true,
    // "acrylicOpacity": 1,
    "opacity": 1, 
    "backgroundImage": "默认情况下的背景图片本地地址",
    "backgroundImageOpacity": 0.3, // 背景图片透明度
    "font": 
        {
            "face": "MesloLGS Nerd Font Mono", //字体类型
            "size": 16.0 //字体大小
        },
    "bellStyle": "none",
},

服务器信息

"list"下面的内容

这里是服务器的信息。一般如下:

[
    {
        "backgroundImage": "C:/Users/Administrator/Downloads/bbmb-80.jpg",
        "commandline": "ssh -i \"id_rsa等密钥的本地地址\" -p 22 [email protected]",
        "font": 
        {
            "weight": "bold"
        },
        "guid": "{xxx}",
        "hidden": false,
        "icon": "E:\\\u6211\u7684\u575a\u679c\u4e91\\\u6837\u5f0f\u5907\u4efd\\\u5934\u50cf\\zzmx-logo-02.jpg",
        "name": "测试1",
        "suppressApplicationTitle": true,
        "tabTitle": "测试1"
    },
    {
        "backgroundImage": "C:\\Users\\Administrator\\Downloads\\zzmx-83.jpg",
        "backgroundImageOpacity": 0.61,
        "commandline": "ssh -i \"id_rsa等密钥的本地地址\" -p 3722 [email protected]",
        "guid": "{xxx}",
        "hidden": false,
        "icon": "E:\\\u6211\u7684\u575a\u679c\u4e91\\\u6837\u5f0f\u5907\u4efd\\\u5934\u50cf\\bbmb-logo-09.jpg",
        "name": "测试2",
        "suppressApplicationTitle": true,
        "tabTitle": "测试2"
    }
]

如果您是首次添加服务器信息,这部分内容建议先在可视化界面里添加:

WindowsTerminal_oEda6Q9fdu

其中,命令行这里值得关注,它的形式是:ssh -i "id_rsa等密钥的本地地址" -p 22端口 用户名@IP地址:

WindowsTerminal_3jOLOaDNE5

这是一个示例:ssh -i "C:/Users/Administrator/.ssh/id_rsa" -p 6922 [email protected],其含义是:

  • 局域网主机192.168.1.111,通过用户名root登陆ssh
  • ssh端口是自定义的6922(而不是默认的22),密钥是id_rsa,位于文件夹C:/Users/Administrator/.ssh中。
  • 实际上,可以生成很多个id_rsa密钥(相当于您有很多把钥匙),只要VPS的authorized_keys文件里添加该密钥对应的公钥即可(具体见《Linux基础 基于密钥对的SSH远程登陆》)。

以下一是个连接Linux服务器的典型配置:

此隐藏内容仅限VIP查看。包年VIP仅10元,建议升级。VIP可享有哪些特权

备份JSON文件

一般来说,Windows Terminal的JSON文件地址是C:\Users\Administrator\AppData\Local\Microsoft\Windows Terminal\settings.json

如果您在一台新的Windows设备上安装Windows Terminal,可以提前备份该JSON文件,直接复制过去,这样包括服务器信息等所有设置都可以还原(当然,图片地址、密钥地址等文件地址在新设备中也要一一对应或相应修改才行)。

FileZilla

安装FileZilla

Windows Terminal只是一个终端工具,只能通过命令行来交互。一般而言,本地电脑与服务器交互时经常还要使用FTP服务来传输文件。FileZilla正是处理该任务的经典软件之一,免费客户端也足够用了。首先,下载FileZilla Client

msedge_eL9Qn1Jg9o

像普通Windows软件一样正常安装即可。

FileZilla的工作界面如下:

filezilla_KUEim8BNa9

添加服务器信息

在站点管理器中设置服务器的访问信息。这是一个示例:

此隐藏内容仅限VIP查看。包年VIP仅10元,建议升级。VIP可享有哪些特权

虽然SFTP性能比FTP差些,但更加安全;而且可以访问更多文件,我个人比较推荐。实际使用时上传/下载带宽大致在100Mb左右(应该是ssh协议的限制),对于日常文件的传输基本已经够了。

小结

我已经弃用MobaXterm了,目前用的也是Windows Terminal + FileZilla方案。准备学习Linux或玩VPS的小伙伴,不妨采用这个方案。我测试了半年,该方案还是十分稳定的。赶紧来试试看吧 (~ ̄▽ ̄)~

参考

---------------
完结,撒花!如果您点一下广告,可以养活苯苯😍😍😍

感谢ZGOCLOUD友情赞助 (ฅ´ω`ฅ) 本博客基于m2w创作。版权声明:除特殊说明,博客文章均为Bensz原创,依据CC BY-SA 4.0许可证进行授权,转载请附上出处链接及本声明。VIP内容严禁转载!由于可能会成为AI模型(如chatGPT)的训练样本,本博客禁止将AI自动生成内容作为文章上传(特别声明时除外)。如有需要,请至学习地图系统学习本博客的教程。加Telegram群可获得更多帮助喔! | 博客订阅:RSS | 广告招租请留言 | 博客VPS | 致谢渺软公益CDN |

评论

  1. bestpupil
    Windows Edge 124.0.0.0
    5 天前
    2024-4-25 17:22:18

    站长你好,请问文章开头的【本文最后更新于 18 天前,如有失效请评论区留言。】如何添加。

    • 博主
      bestpupil
      Windows Edge 124.0.0.0
      4 天前
      2024-4-26 22:47:02

      如图所示:

      查看图片


  2. 哇哈哈
    Windows Edge 123.0.0.0
    3 周前
    2024-4-12 9:36:01

    你这个站 背景图都是很养眼的

    • 博主
      哇哈哈
      Windows Edge 123.0.0.0
      3 周前
      2024-4-12 20:55:03

      呐,这就叫专业

  3. shule
    Windows Chrome 123.0.0.0
    3 周前
    2024-4-08 9:29:33

    我一般使用 scp 命令进行传输文件

    • 博主
      shule
      Windows Edge 123.0.0.0
      3 周前
      2024-4-08 12:11:11

      FileZilla相当于有一个可视化窗口,更加符合有Windows使用经验的小伙伴的日常习惯 ~ scp当然可以,但对于初学者来说并不够实用 (~ ̄▽ ̄)~

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇