网站建设中,中国大陆地区请使用VPN访问,欢迎提建议,关注LSKR Mastodon

Linux 终端推荐:选择命令行工具和Shell 提示 | Oh My Zsh 和fish shell比较

了解各种终端模拟器和命令提示工具。比较Oh My Zsh、fish shell等,以及安装与配置指南。增强你的命令行体验,提高效率。

Linux 企鹅图标

一、Linux 终端推荐

当涉及到终端软件时,有许多选择可以根据个人偏好和需求进行使用。以下是一些流行的终端软件推荐:

  • GNOME Terminal: 这是 GNOME 桌面环境的默认终端模拟器,提供了许多功能,包括多标签页、自定义配色方案和配置选项。
  • Konsole: 这是 KDE 桌面环境的默认终端模拟器,具有高度可定制性和丰富的功能,如分屏、透明度设置、会话管理等。
  • Terminator: Terminator 是一个功能丰富的终端仿真器,支持分割窗口、垂直和水平拆分以及自定义布局。
  • Tilix: Tilix 提供了类似于 Terminator 的分屏功能,同时还具有可自定义的外观、标签页和布局选项。
  • Alacritty: Alacritty 是一个快速、跨平台的终端模拟器,注重性能和简洁性,被认为是一个轻量级的选择。
  • Kitty: Kitty 是一个跨平台的终端仿真器,具有高度可定制性和可扩展性,支持图像渲染、多个字体和颜色管理。
  • Termite: Termite 是一个轻量级的终端仿真器,专注于简洁和快速响应,具有透明度和分屏等功能。
  • Hyper: Hyper 是一个基于 Web 技术构建的现代化终端模拟器,支持插件和主题定制。

这些终端软件各自具有特定的特性和优点,可以根据个人的偏好和需求来选择适合自己的终端模拟器。

二、命令提示Shell

对于命令提示工具,有几个流行且强大的工具可供选择,这些工具能够提供更智能、更交互式的命令行体验。以下是一些常用的命令提示工具:

  • Oh My Zsh: Oh My Zsh 是一个针对 Zsh 的框架和社区驱动的项目,提供丰富的主题、插件和定制选项。它提供了强大的自动补全功能、语法高亮、插件支持等,让命令行更具交互性和易用性。
  • Fish Shell: Fish 是一种用户友好且功能强大的 shell,具有智能补全、语法高亮、易于学习和使用的特性。它的提示符(prompt)非常清晰,并且支持丰富的自动补全功能。
  • Powerlevel10k: 这是一个用于 Zsh 和 Fish 的提示符主题,它提供了高度可定制的提示符,可显示有关系统和当前工作目录的信息,外观漂亮且高度个性化。
  • Bash-it: Bash-it 是一个为 Bash 提供的社区驱动的框架,提供了大量的主题、插件和功能增强,使得 Bash 的提示符和功能更加丰富。
  • Starship: Starship 是一个跨 shell 的高度可定制的提示符,支持 Bash、Zsh、Fish 等多种 shell,可以显示有关 Git 分支、执行时间和其他有用信息。

这些命令提示工具都有其独特的特点和优势,可以根据个人的偏好、习惯和需求来选择合适的工具,以增强命令行的使用体验。

三、安装Oh My Zsh

3.1 简介Oh My Zsh 与Zsh

Oh My Zsh 是一个针对命令行 shell Zsh 的开源框架和社区驱动的项目。它提供了一种简化配置、增强功能和美化终端界面的方式。Zsh(Z Shell)是一种强大的命令行 shell,是 Bash 的替代品,具有更多功能和定制选项。

Oh My Zsh 通过提供丰富的插件、主题和内置工具,使得配置和使用 Zsh 变得更加方便和愉快。它包含了许多功能,如语法高亮显示、自动完成、命令别名、主题定制等,让用户可以根据自己的喜好和需求对命令行界面进行个性化定制。

总的来说,Oh My Zsh 是建立在 Zsh 基础上的一个社区驱动的工具集合,旨在简化和增强命令行 shell 的使用体验。

Zsh(Z Shell)是一种命令行 shell,类似于常见的 Bash shell,但它提供了更多的功能和定制选项。Zsh 以其强大的自动补全功能、更高级的历史记录管理、更灵活的命令别名和功能丰富的插件系统而闻名。

3.2 安装

3.2.1 Zsh

一般Linux 系统都不带Zsh 默认Shell环境。需要自行安装Zsh

本人是ubuntu系统的所以官方指导,采用apt安装。

Ubuntu, Debian & derivatives (Windows 10 WSL | Native Linux kernel with Windows 10 build 1903)

apt install zsh

3.2.2 Oh My Zsh

curl 安装

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

或者使用wget 一键安装

sh -c "$(wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"

3.3 配置插件

history-substring-search 是 Oh My Zsh 中的一个插件,提供了在输入命令时实时搜索历史命令的功能。要配置和使用 history-substring-search 插件,请按照以下步骤进行:

步骤一:启用插件

打开您的 ~/.zshrc 文件(Zsh 配置文件):

bashCopy code
nano ~/.zshrc

~/.zshrc 文件中找到 plugins=(...) 行,添加 history-substring-search 到插件列表中,例如:

bashCopy code
plugins=(... history-substring-search)

保存并关闭文件,然后重新加载配置文件:

bashCopy code
source ~/.zshrc

步骤二:配置键绑定

默认情况下,history-substring-search 没有默认的键绑定。您需要设置键绑定来启用搜索功能。

打开 ~/.zshrc 文件:

bashCopy code
nano ~/.zshrc

在文件中添加以下内容来设置键绑定:

bashCopy code# Enable substring history search
bindkey "^[[A" history-substring-search-up
bindkey "^[[B" history-substring-search-down

注意:^[[A^[[B 是典型的上箭头和下箭头的转义序列,用于终端中的键盘箭头按键。您可以使用 cat 命令来查看您的终端上箭头和下箭头的具体转义序列。

保存并关闭文件,然后重新加载配置文件:

bashCopy code
source ~/.zshrc

使用 history-substring-search

现在,当您在 Zsh 中使用命令行时,在输入命令的过程中,您可以使用键盘的上箭头和下箭头来进行实时搜索和浏览之前输入过的相关命令。只需键入一部分命令,然后按下上箭头或下箭头键即可。

3.4 其他插件

这样就能够快速查找并浏览历史命令,找到并执行您想要的命令。记得根据自己的偏好调整键绑定,以适应您在终端中的习惯。

命令补全插件:

  • zsh-autosuggestions: 该插件提供智能命令建议,根据您的历史输入来补全命令,提供更快速的输入建议。
  • zsh-syntax-highlighting: 这个插件可以对命令行中的语法进行高亮显示,更容易看清楚和理解命令的结构。
  • git: 提供与 Git 相关的命令补全,使得在使用 Git 时更加便捷。
  • docker: 如果您在使用 Docker,这个插件可以为 Docker 命令提供自动补全。
  • kubectl: 适用于 Kubernetes 用户,提供 kubectl 命令的补全功能。

四、Fish Shell

在 Ubuntu 或其他基于 Debian 的 Linux 发行版上安装 Fish Shell:

打开终端并运行以下命令:

sudo apt-get update
sudo apt-get install fish

无论您使用哪种操作系统,安装完成后,您可以通过运行 fish 命令来启动 Fish Shell。安装后可能需要设置 Fish 作为默认 Shell,具体操作可能因操作系统而异。

五、查看Shell 环境

查看自己处于bash 还是Zsh 环境

echo $SHELL

六、其他类似功能

[1] Bash-it

[2] FZF 插件功能

七、参考手册

Installing ZSH:https://github.com/ohmyzsh/ohmyzsh/wiki/Installing-ZSH

Install oh-my-zsh now:https://ohmyz.sh/#install

发表评论

Cookie Consent
我们使用 Cookie 来了解您如何使用我们的网站并提升您的体验。这包括个性化内容和广告。
Oops!
It seems there is something wrong with your internet connection. Please connect to the internet and start browsing again.
AdBlock Detected!
We have detected that you are using adblocking plugin in your browser.
The revenue we earn by the advertisements is used to manage this website, we request you to whitelist our website in your adblocking plugin.
Site is Blocked
Sorry! This site is not available in your country.