Linux好用的工具
星期日, 9月 22, 2024 | 1分钟阅读 | 更新于 星期日, 9月 22, 2024
我在arch linux上常用的软件,若有多平台将进行说明
代码/编辑类软件
neovim
neovim
是vim的fork
,在保留vim的操作逻辑的同时,提供了更强大的插件支持以及速度。nvim使用lua
作为插件的配置以及开发语言。
重要 neovim是跨平台的,插件亦是跨平台的,windows可以从官网进行下载,linux/mac推荐使用包管理器
neovim想要良好体验需要进行配置,推荐使用astronvim
项目作为基础,可以访问其官网了解
Zed
zed
是原github
项目Astom
编辑器团队的新作品,Astom
比Vscode
更臃肿,导致效率偏低,现已不再更新。zed
使用rust
作为开发语言,同时默认支持gpu加速,因此
速度比sublime
还要快。zed
原生支持插件以及AI的集成。
重要
zed
支持多平台,linux/mac可以直接使用包管理器安装,windows还未正式发布,可以到官网获取源代码手动编译
常用工具类
yazi
yazi
是使用rust
编写的TUI
文件管理器,基于异步I/O
从而实现了极快的速度。同时yazi
适配了几乎所有终端图片协议,同时可以在终端快速预览文件内容
重要
yazi
是跨平台的,它在linux/mac上可以使用包管理器安装,windows平台仍处于ea阶段,现已提供安装包,可以访问官网查看
lazygit
lazygit
是使用go
开发的TUI
git管理器,它较为方便的封装了git的常用功能,同时保证了速度
重要 lazygit是跨平台的,linux/mac推荐使用包管理器安装,windows可以访问其github
lazydocker
lazydocker
是由lazygit
开发者开发的另一个项目,同样适用go
语言开发,用来管理docker
。
重要
lazydocker
同样跨平台,详情可以及查看github
bottom
bottom
用于终端的可自定义跨平台图形进程/系统监视器,使用rust
开发,极为轻量且易于操作
重要
bottom
是跨平台的,可以访问官网了解
功能测试工具
posting
posting
是使用python
开发免费的TUI
功能测试软件,它拥有完整的测试工具链,可以快速的进行功能测试
重要
posting
同样支持跨平台,它的安装推荐查看官方文档
Hoppscotch
Hoppscotch
前身为postwoman
,是极为强大测试软件,它可以在几乎所有环境运行,桌面版使用tarui
框架,它的运行速度极快
重要
Hoppscotch
支持几乎所有平台,可以查看官网获取帮助
终端工具
kitty
kitty
是一个个人项目,使用c
+go
进行开发,它支持gpu加速,使其速度达到了极为夸张的程度。它拥有自己的终端图片显示协议,同时拥有Tmux
的主要功能(终端复用)
警告
kitty
不是完全跨平台的,它原生并不支持windows,可以使用wsl2体验。使用方法可以查看官网
alacritty
对于不满意windows终端模拟器的人,alacritty
是一个非常好的选择,它使用rust
开发,同样支持gpu加速。但其没有自己的终端图片协议。
重要
alacritty
是跨平台的,它的速度甚至比kitty
还要快一些,可以访问其官网了解
fish
fish
是一个命令行交互Shell
,故意不完全符合 POSIX,它旨在通过简化或不同的语法来解决 POSIX 不一致(如创建者所感知的那样)。这意味着即使是简单的 POSIX 兼容脚本也可能需要一些重大的调整甚至完全重写才能与 fish 一起运行。
fish
使用rust
进行过重构,它最早使用c
语言开发,用用极为令人震惊的速度。fish
还支持开箱即用自动补全、历史记录、搜索、web配置等功能。
警告
fish
并不支持windows,主要应用在linux/mac上面,可以在各个发行版中使用包管理器安装fish
可以使用fisher
作为插件管理工具,访问github了解
starship
starship
使用rust
开发的终端提示符,它极为轻量,易于配置。它有极强的兼容性,支持几乎所有Shell
包括zsh
,powershell
等等
重要
starship
是跨平台的,详情可见官方文档
bat (2024.10.02更新)
bat
是使用rust
对cat
的克隆,它比cat更加易于使用,具备高亮显示、git集成、以及自动分页等功能
重要
bat
是跨平台的,可以访问github了解,bat
可以和man
联动,以实现文档的高亮显示,只需要配置MANPAGER="sh -c 'col -bx | bat -l man -p'"
和MANROFFOPT="-c"
两个环境变量
glow (2024.10.02更新)
Glow
是一款基于终端的Markdown
阅读器,旨在充分发挥 CLI 的美感和强大功能。它是使用go
语言开发的,Glow
将在子目录或本地 Git 存储库中找到本地 Markdown 文件。
重要
Glow
是跨平台的,它可以在几乎所有的平台安装,可以访问github进行了解。直接使用glow
命令将打开它的TUI,使用glow + *.md
将直接输出
fd (2024.10.07更新)
fd
一种简单、快速且用户友好的find
替代方案,它是使用rust
开发的,支持正则表达式。它并未完全支持find
的所有功能,但是对于日用是完全可以保证的。它拥有开箱即用的高亮显示。速度要比find
快得多。
简单使用方法
- 查找包含某个字符(如:new)的文件
fd new
- 指定某个文件夹(如:/etc内的)的文件
fd new /etc
- 通过正则表达式查找以n开头,w结尾的文件
fd '^n.*w$'
- fd直接在某个目录可以递归显示所有文件,与ls -R的效果差不多
- 通过文件拓展名查找文件
fd -e .md
- 查找具体的某个文件
fd -g new.fish
- fd默认不查找隐藏文件夹内的文件,可以通过
-H
获取隐藏文件夹内的文件
fd -H new
重要
fd
是完全跨平台的,在几乎所有发行版(包括windows)内都可使用包管理器安装,详细信息可以访问github
影音娱乐
go-musicfox
go-musicfox
是国人开发的业余项目,一款TUI
第三方网易云音乐。由于并不是全职开发此软件,因此更新效率并不高,但目前功能已完全满足需要。
go-musicfox
是使用go进行开发的,接入了UnblockNeteaseMusic,在linux上支持mpd
作为后端,效果很棒
重要
go-musicfox
是跨平台的,甚至支持安卓,详情可见github
ncmpcpp
ncmpcpp
是一个 mpd 客户端(与 mopidy 兼容),其 UI 与ncmpc
非常相似,但它提供了新的有用功能,例如支持用于库搜索的正则表达式、扩展的歌曲格式、项目过滤、对播放列表进行排序的能力以及本地文件系统浏览器。
警告
ncmpcpp
不支持windows,linux/mac用户可以通过包管理器安装
mpv
mpv
是一个开源且易于配置的视频播放器,支持几乎所有视频格式并且支持gpu加速,同时提供了大量插件。
重要
mpv
是跨平台的,可以查看官网获取相关支持