Terminal终端中高效好用的工具收入合集

发布时间 2023-03-26 04:15:31作者: CodeWater

适用于Linux操作环境以及其他一切终端操作工具。
笔者使用的是WSL+Ubuntu18.04。(最好安装22.04以上版本,18的版本需要折腾。。。)
目前暂为记录,后续补全详细安装及使用方式。
软件迁移

1.zsh

zsh(Z Shell)是一种替代 bash 的 Unix/Linux 命令行 shell。和 bash 一样,zsh 也是一种命令解释器,用于解析和执行用户在终端中输入的命令。相比于 bashzsh 提供了更多的特性和自定义选项,因此在一些 Linux 系统中,已经默认采用 zsh 作为系统的默认 shell。

以下是 zsh 的一些特性:

  • 自动补全(Auto-completion):自动补全是 zsh 的一个非常强大的特性。通过自动补全,可以极大地缩短命令输入的时间,并减少输入错误。
  • 命令别名(Command Aliases):你可以自定义命令别名,例如将常用命令简写为一个字母。
  • 颜色提示(Color Prompts):zsh 可以使用颜色来区分不同的输出类型,包括命令提示符、错误输出和标准输出等。
  • 插件系统(Plugin System):zsh 支持使用插件扩展其功能,例如语法高亮、目录切换和自动补全等。

安装

如果你想尝试 zsh,可以使用如下命令在 Ubuntu 上安装:

sudo apt update
sudo apt install zsh

安装完成后,你可以使用以下命令将 zsh 设置为默认 shell:

chsh -s $(which zsh)

然后注销并重新登录,即可开始使用 zsh。在使用 zsh 时,你可以通过编辑 ~/.zshrc 文件,来自定义一些 aliasexport、配置插件等选项,以完全适应自己的工作环境。

ps:
chsh 表示 "change shell",用来改变当前用户的默认 shell。更具体地说,chsh -s $(which zsh) 命令将当前用户的默认 shell 切换为 zsh

其中,$(which zsh) 使用 which 命令来查找 zsh 的安装路径,并将该路径作为参数传递给 chsh -s 命令来设置默认 shell。相当于 chsh -s /bin/zsh。如果你知道 zsh 的确切安装路径,也可以手动指定路径,例如 chsh -s > > > /usr/bin/zsh

在执行 chsh 命令时,需要输入当前用户的密码进行验证。执行成功后,注销并重新登录,就可以开始使用 zsh 作为你的默认 shell 了。


2.fzf

fzf是一个命令行模糊查找工具,它支持快速模糊匹配,可以在大量文件或者目录中快速查找到你想要的内容。fzf支持多种模式:模糊查找模式,完全匹配模式和正则表达式模式等。它可以在Unix/Linux和macOS系统中使用,并且有很多常用命令的插件和集成,如vimzsh。使用fzf时,你可以从命令行输入一个字符串来搜索你想查找的内容,fzf会根据你的输入自动筛选出匹配的文件或目录。

简要使用

fzf的基本使用方法是在命令行中输入fzf,然后按下回车键,就会出现一个交互式的搜索提示符,你可以使用键盘来输入你想要查找的内容。以下是fzf的一些基本用法:

  1. 模糊匹配:输入一个关键词,fzf会根据这个关键词快速筛选出匹配的文件和目录。例如:

    $ fzf
    $ md (进入搜索界面后输入会出现下图效果)
    


    选中查出来的结果后会打印出文件所在的路径

  2. 正则匹配:使用正则表达式来匹配文件和目录,使用-e选项打开正则表达式模式。例如,在/usr/bin目录下查找grep相关的文件:

    $ find /usr/bin | fzf -e --preview 'head -n 50 {}'
    
  3. 从标准输入中读取输入:使用-f选项从标准输入中读取输入,例如:

    $ echo -e 'apple\norange\nbanana\npear' | fzf -f 'a'
    
  4. 键盘快捷键:fzf提供了一些键盘快捷键,可以方便地浏览、选择和处理匹配结果。查看键盘快捷键可以通过按下CTRL+T来打开一个fzf的帮助窗口。

  5. fzf搜索隐藏文件:
    搜索当前目录下的隐藏目录:

    find . -type d -name ".*" -printf "%f\0" | fzf --read0
    

    具体地,该命令使用 find 命令查找当前目录中以 . 开头的所有隐藏目录, -type d是指定目录(可以去掉,这样也会包括文件),并使用 -printf "%f\0" 选项打印这些目录名称,并以 null 字符 (\0) 作为各个目录之间的分隔符。然后,使用 fzf 指定 --read0 选项,以支持 null 分隔符,并显示一个交互式的过滤器供你选择隐藏目录。你可以使用搜索框输入关键字,然后使用上下箭头来移动光标并选择目录,最后按下 Enter 键即可。

    • 使用ripgrep配合:
      # 搜索 $HOME 目录下的所有文件,包含隐藏文件
      $ rg --files --hidden | fzf
      
      # 搜索当前目录下的所有文件,包括隐藏文件
      $ find . -type f | fzf --hidden
      
  6. 在zsh中搜索历史命令,ctrl+r即可出现历史命令:

这里只是简单介绍了fzf的一些基本用法,如果你想要更深入地了解和使用fzf,可以参考官方文档:https://github.com/junegunn/fzf


3.ripgrep

ripgrep,是一款适用于 Linux、macOS 和 Windows 的高性能命令行搜索工具。相比于传统的搜索工具,例如 grepackrg 采用了多线程并行搜索的方式,速度更快,而且支持正则表达式,并且默认忽略了 Git 和其他 VCS 中的一些文件和目录,避免搜索无用的文件。

ubuntu官方软件源和阿里云源都没有这个软件。下面是通过github下载二进制文件安装的方式。


4.ranger

Ranger是一个命令行下的文件管理器,它提供了一种简单而有效的方式来浏览和操作文件系统中的文件。你可以使用Ranger在终端中导航文件、预览文件、编辑文本文件、复制/移动文件、创建/删除文件和目录等操作。Ranger还允许你使用插件来增强其功能,例如支持图像浏览、版本控制等。Ranger在Linux和Mac OS X等操作系统上都可以使用。对于那些想要通过键盘而不是鼠标来管理其文件的用户来说,Ranger是一种非常好的选择。

安装

要在 Ubuntu 上安装 ranger 文件管理器,请按照以下步骤进行:

  1. 打开终端并输入以下命令以更新软件包列表:

    sudo apt update
    
  2. 然后,输入以下命令以安装 ranger:

    sudo apt install ranger
    

    输入y以确认安装。

  3. 安装完成后,输入以下命令来启动 ranger:

    ranger
    

    效果如图:

  4. 如果您还希望更改默认的文件图标主题,可以执行以下命令来安装相关图标主题:

    sudo apt install -y gvfs-backends xdg-user-dirs-gtk xdg-user-dirs
    

    使用任何文件管理器打开 ~/.config/gtk-3.0/settings.ini 文件,添加以下配置信息:

    [Settings]
    gtk-icon-theme-name = Adwaita
    

    将其中的 Adwaita 替换为您想要使用的图标主题名称。

通过这些步骤,您现在可以在Ubuntu上安装和使用ranger文件管理器了。

基本使用

将 ranger 打开时,您将看到类似于命令行的界面。以下是一些基本的 ranger 文件管理器使用技巧:

  1. 移动光标:您可以使用上下左右箭头键或 hjkl 键移动光标。

  2. 打开文件或目录:将光标移到要打开的文件或目录上。按 Enter 键或 i 键打开文件,按 Enter 键或 Tab 键进入目录。

  3. 复制和移动文件:在文件或目录选中之后,按下 yydd 键将文件复制或移动到剪贴板。移动时,按下 cwcm 键确定目标路径,并按下 Enter 键。

  4. 查看帮助:按下 ? 键以查看 ranger 的帮助文件。

  5. 退出 ranger:按下 q 键即可退出 ranger。

  6. 更改 ranger 设定:按下 Ctrl + o 键,进入 ranger 的设置面板。在其中,您可以配置各种选项,例如颜色方案、预览设置以及 keybindings(快捷键设置)等。

除了这些基本的技巧外,ranger 还提供了许多其他强大的功能,例如文件搜索、标记、过滤、批量处理等,可以通过按下 ? 键打开 ranger 的帮助文件,学习更多高级技巧。