目录
- ZSH -> NuShell
- cat -> bat
- pip -> uv
- grep -> ripgrep
- htop -> zenith
- cd -> zoxide
- ls -> eza
- fswatch -> watchexec
- Ranger -> yazi
- du -> dust
- [tmux – zellij] 待续
- [LaTeX -> typst] 待续
- [Pylint -> Ruff] 待续
- [xxd -> hexyl] 待续
- [find -> fd] 待续
- [ps -> procs] 待续
- [tldr -> tealdeer] 待续
- [Terminal -> Alacritty] 待续
NuShell:高效的现代指令行东西
NuShell 是一款革命性的指令行东西,旨在供给比传统 Shell,如 zsh,更先进的用户体会。它经过结合现代编程言语的优势和 Shell 的灵活性,为用户带来了史无前例的功率和便利性。
NuShell 的长处
- 结构化数据处理:NuShell 以共同的方法处理数据,使得对杂乱数据的查询和办理变得简略直观。
- 跨渠道支撑:不管是在 macOS、Linux 仍是 Windows 上,NuShell 供给共同的体会。
- 现代编程特性:支撑丰厚的数据类型,使得脚本编写愈加强壮且易于维护。
- 友爱的过错信息:NuShell 规划了更易于理解的过错提示,协助用户快速定位和解决问题。
装置和装备 NuShell
在 macOS 上装置 NuShell:
brew install nushell
设置 NuShell 为默许 Shell:
echo $(which nu) | sudo tee -a /etc/shells && chsh -s $(which nu)
这两步操作将 NuShell 装置到您的体系并设置为默许的指令行环境。
运用 NuShell
NuShell 的运用与传统 Shell 相似,但供给了更丰厚的功用。以下是一些根本用法示例:
- 检查和过滤数据:
ls | where size > 1mb | sort-by size
这条指令列出当时目录中大于 1MB 的文件,并按巨细排序。
- 运用内置指令处理数据:
ps | where cpu > 10 | get name
列出 CPU 运用率超越 10% 的进程称号。
点评 NuShell
经过结构化数据和强壮的内置指令,NuShell 明显进步了指令行操作的功率。不仅如此,它的跨渠道特性和友爱的过错信息使得从其他 Shell 迁移到 NuShell 成为一种轻松愉快的体会。
NuShell 的规划理念和功用使其成为现代开发者东西箱中的必备东西,不管是数据处理、体系监控仍是日常使命主动化,NuShell 都能供给优秀的支撑。
bat:不仅仅是 cat 的 Rust 代替品
bat 是一个现代的指令行东西,用 Rust 编写,旨在供给比传统的 cat
更多的功用,包含语法高亮、Git 集成、不行打印字符的可视化、主动分页,以及智能输出。它兼容 cat
的大部分功用,并增加了许多进步生产力的特性。
bat 的长处
- 语法高亮:关于大都编程和符号言语主动供给语法高亮,使代码更易读。
- Git 集成:主动显现 git 更改记录,方便跟踪代码修正。
- 不行打印字符可视化:能够显现文件中的不行打印字符,便于调试。
- 主动分页:当输出内容超出屏幕时,主动分页显现,防止信息丢掉。
- 智能输出:当经过管道运用或非交互环境下,主动调整为纯文本输出,确保与其他东西的兼容性。
装置装备 bat
在 macOS 上,运用 Homebrew 装置 bat 是非常简略的:
brew install bat
为了让 bat 代替 cat
,您能够在 shell 装备文件中增加一个别名:
alias cat='bat --paging=never'
这样,每次输入 cat
时,实际上都是在运用 bat
,但不启用分页功用。
运用 bat
- 检查文件内容,带有语法高亮和 Git 集成:
bat your_file.ext
- 显现不行打印字符:
bat -A your_file.ext
- 默许情况下,
bat
会主动分页。假如你希望禁用分页功用(例如,为了代替cat
),能够运用之前提到的别名,或许直接在指令中指定:
bat --paging=never your_file.ext
点评 bat
经过引进语法高亮和 Git 集成等现代特性,bat 大幅进步了检查源代码和文本文件的体会。它的主动分页和智能输出特性,更使得在长文本或代码文件的阅读成为一种享用,而不是应战。不管是关于开发者仍是普通用户,bat 都是进步指令行作业功率的利器。
uv:Rust 加快的 Python 包办理东西
uv 是一个用 Rust 编写的 Python 包装置程序和解析器,旨在作为 pip 和 pip-tools 的高速代替品。它结合了现代技能的优势,供给了一个更快、更高效、并且兼容性强的包办理体会。
uv 的长处
- 无缝替换:uv 规划为 pip、pip-tools 和 virtualenv 指令的直接代替品,无需改变现有作业流程。
- 极速功用:比 pip 和 pip-tools 快 10-100 倍,大幅缩短包装置和办理的时刻。
- 磁盘空间高效:具有大局缓存用于依靠去重,削减不必要的磁盘空间占用。
- 跨渠道支撑:兼容 macOS、Linux 和 Windows,满足不同操作体系用户的需求。
- 无需 Rust 或 Python 环境:uv 能够作为静态二进制文件装置,装置方法灵活多样。
- 高档功用支撑:包含依靠版别掩盖、代替解析战略等高档功用。
- 友爱的过错提示:供给最佳的过错信息和冲突跟踪解析器,协助用户轻松定位问题。
装置装备 uv
在 macOS 上装置 uv 非常简略,只需一个指令:
brew install uv
这条指令经过 Homebrew 装置 uv,使其当即可用。
由于 uv 被规划为 pip 的直接代替品,因此大部分情况下无需额定装备即可运用。关于需求特别装备的场景,uv 文档供给了详尽的辅导。
运用 uv
运用 uv 来装置 Python 包,体会与运用 pip 相似,但速度更快:
uv install requests
检查已装置的包列表:
uv list
创立虚拟环境
运用 uv 创立一个新的虚拟环境非常简略:
uv venv # 在当时目录下创立 .venv 虚拟环境
激活虚拟环境
激活您创立的虚拟环境:source .venv/bin/activate
装置依靠
装置依靠到虚拟环境中,uv 供给了与 pip 相似的指令行界面:
uv pip install flask # 装置 Flask
uv pip install -r requirements.txt # 从 requirements.txt 文件装置
uv pip install -e . # 以可修正形式装置当时项目
uv pip install "package @ ." # 从磁盘装置当时项目
uv pip install "flask[dotenv]" # 装置 Flask 并包含 "dotenv" 扩展
生成确定的依靠集
生成一组确定的依靠,并输出到 requirements.txt
:
uv pip compile requirements.in -o requirements.txt # 从 requirements.in 生成
uv pip compile pyproject.toml -o requirements.txt # 从 pyproject.toml 生成
uv pip compile setup.py -o requirements.txt # 从 setup.py 生成
echo flask | uv pip compile - -o requirements.txt # 从 stdin 读取并生成
uv pip freeze | uv pip compile - -o requirements.txt # 确定当时环境的依靠
同步虚拟环境
将一组确定的依靠与虚拟环境同步:
uv pip sync requirements.txt # 从 requirements.txt 文件同步
UV 的 pip-install
和 pip-compile
指令支撑许多与现有东西相同的指令行参数,包含 -r requirements.txt
、-c constraints.txt
、-e .
(用于可修正装置)、--index-url
等,供给了一个既熟悉又高效的包办理体会。
点评 uv
uv 供给了一个高效、快速且用户友爱的 Python 包办理解决方案。它不仅明显进步了包装置速度,还经过大局缓存和优化的过错提示等特性,改进了开发者的作业功率和体会。不管是新项目的开发仍是现有项目的维护,uv 都能为 Python 社区带来明显的优势。
Ripgrep:高效的代码查找东西
Ripgrep 是一个用 Rust 编写的指令行东西,旨在供给比传统的 grep
更快、更强壮的查找才能。它结合了现代技能的优势,为用户带来了史无前例的查找体会。
Ripgrep 的长处
- 递归查找:Ripgrep 默许递归查找当时目录,无需额定参数。
-
主动过滤:主动依据
.gitignore
规矩过滤文件,进步查找功率。 - 语法高亮:查找结果带有语法高亮,使得查找结果一望而知。
- Git 集成:能显现 git 更改记录,方便追寻代码修正。
-
不行打印字符可视化:经过
-A
或--show-all
参数可视化显现文件中的不行打印字符。 - 主动分页:当输出内容超越屏幕时,主动分页显现。
- 智能输出:在设置了分页器选项的同时支撑管道输出,习惯不同的运用场景。
- 跨渠道支撑:支撑 Windows、macOS 和 Linux,满足不同操作体系用户的需求。
装置装备 Ripgrep
在 macOS 上装置 Ripgrep 非常简略,只需一个指令:
brew install ripgrep
这条指令经过 Homebrew 装置 Ripgrep,使其当即可用。
Ripgrep 的默许装备已经非常强壮,大大都情况下你能够直接运用。假如需求对其进行装备,能够经过修正 .ripgreprc
文件来完成,该文件通常位于用户的家目录下。
运用 Ripgrep
进行根本查找:
rg pattern
在特定文件中查找:
rg pattern README.md
运用正则表达式进行查找:
rg 'patternw '
点评 Ripgrep
Ripgrep 经过其快速的查找速度、直观的语法高亮和强壮的 Git 集成,极大地进步了开发者的查找功率。主动过滤和不行打印字符的可视化功用使得 Ripgrep 成为处理杂乱查找使命时的理想挑选。其跨渠道支撑和智能输出功用更是让 Ripgrep 成为了现代开发者东西箱中不行或缺的一部分。
Zenith:现代化的体系监控东西
Zenith 是一个现代化的指令行体系监控东西,它经过供给详细的资源运用情况和功用指标来代替经典的 htop。它结合了功用剖析和监控,使得用户能够实时观察到体系的健康状况和功用瓶颈。
zenith 的长处
- 直观的界面:Zenith 供给了一个图形化的终端界面,显现CPU、内存、磁盘和网络运用情况,以及进程列表。
- GPU 监控:与 htop 不同,Zenith 还支撑 GPU 运用率和温度的监控,关于运用 GPU 进行计算的用户来说非常有用。
- 历史数据:Zenith 能够跟踪并显现体系功用的历史数据,协助用户剖析曩昔的功用问题。
- 响应式布局:界面布局会依据终端窗口的巨细主动调整,坚持信息的清晰可读。
装置和装备 zenith
装置 Zenith 非常简略,关于 macOS 用户,能够经过 Homebrew 装置:
brew install zenith
Zenith 无需杂乱的装备即可运用。装置后直接运转 zenith
指令即可发动。
运用 zenith
发动 Zenith 很简略,只需求在终端中输入:
zenith
默许情况下,Zenith 会展示一切中心的 CPU 运用率、内存运用情况、磁盘 IO 和网络 IO。您能够运用键盘上的方向键来阅读进程列表,或许运用 Tab 键在不同的监控面板之间切换。
点评 zenith
Zenith 以其现代化的界面和丰厚的功用集,在指令行体系监控东西中锋芒毕露。它的 GPU 监控功用特别合适需求对 GPU 资源进行实时监控的用户。尽管它或许不像 htop 那样轻量级,但其供给的详细功用剖析和历史数据追寻功用,使其成为高档用户和体系办理员剖析和优化体系功用的有力东西。
Zoxide:一个更聪明的目录跳转东西
zoxide 是一个指令行东西,旨在进步您的目录导航功率。它经过学习您的运用习惯,使您能够快速跳转到常常拜访的目录。
zoxide 的长处
- 智能跳转:zoxide 学习您最常拜访的目录,并允许您快速跳转到这些目录,而无需输入完好的途径。
- 跨 Shell 兼容性:支撑一切主要的 Shell,如 Bash、Zsh、Fish 和 NuShell,确保不管您运用哪种 Shell 都能获得共同的体会。
-
简化的指令:zoxide 经过简略的指令
z
代替了传统的cd
指令,进一步简化了目录导航。 - 无需外部依靠:作为一个静态二进制文件,zoxide 能够轻松装置在任何体系上,无需额定的依靠。
装置装备 zoxide
在 macOS 上装置 zoxide 非常简略,只需一个指令:
brew install zoxide
依据您运用的 Shell,装备 zoxide 以使其收效。
Nushell
- 将下列指令增加到您的 env 文件结尾(经过在 Nushell 中运转
$nu.env-path
找到它):
zoxide init nushell | save -f ~/.zoxide.nu
- 现在,将以下内容增加到您的装备文件结尾(经过在 Nushell 中运转
$nu.config-path
找到它):
source ~/.zoxide.nu
请注意,zoxide 仅支撑 Nushell v0.89.0 及以上版别。
Zsh
- 将以下内容增加到您的装备文件结尾(通常是
~/.zshrc
):
eval "$(zoxide init zsh)"
为了使主动补全收效,上述行必须在调用 compinit
之后增加。您或许需求经过运转 rm ~/.zcompdump*; compinit
来重建主动补全缓存。
运用 zoxide
运用 zoxide 非常简略,只需求运用 z
指令加上部分目录名即可快速跳转:
z project
假如 project
是您常常拜访的目录,zoxide 会将您直接导航到该目录。
点评 zoxide
zoxide 经过供给一个智能、快速且易于运用的目录跳转解决方案,极大地进步了指令行的作业功率。它的跨 Shell 兼容性和简化的指令使得从传统的 cd
指令过渡变得无缝且天然。zoxide 是进步指令行导航速度的理想东西,特别合适常常在多个项目之间跳转的开发者和体系办理员。
eza:ls 的现代化代替品
eza 是一个现代化的文件列表指令行程序,用 Rust 编写,旨在代替 Unix 和 Linux 操作体系顺便的经典 ls
指令。它供给了更多的特性和更好的默许值,运用色彩区分文件类型和元数据,了解符号链接、扩展特点和 Git 状况,而且它细巧、快速,仅为一个单一的二进制文件。
经过有意识地做出不同的决议计划,eza 试图成为一个功用更全面、更用户友爱的 ls
版别。
eza 的长处
- 修复了 exa 2021 引进的“网格过错”:供给了一个更稳定的显现网格。
- 超链接支撑:能够将文件名显现为可点击的超链接。
- 挂载点细节:显现挂载点的详细信息。
- Selinux 上下文输出:增加了对 Selinux 上下文的支撑。
- Git 库房状况输出:直观地显现 Git 状况。
- 人类可读的相对日期:日期显现愈加友爱。
- 多项安全修复:进步了程序的安全性。
- 对亮堂终端色彩的支撑:界面愈加丰厚多彩。
- 很多的小型 bug 修复和更改:进步了稳定性和可用性。
装置和装备 eza
在 macOS 上,装置 eza 只需求一个简略的指令:
brew install eza
运用 eza
eza 的指令行选项与 ls 的相似,但带有一些重要的改进和扩展:
-
显现选项:
-
-1, --oneline
:每行显现一个条目。 -
-G, --grid
:以网格形式显现条目(默许)。 -
-l, --long
:显现扩展的细节和特点。 -
-R, --recurse
:递归进入目录。 -
-T, --tree
:以树形递归进入目录。 -
--colo[u]r
:何时运用终端色彩(总是,主动,从不)。
-
-
过滤选项:
-
-a, --all
:显现躲藏文件和’点’文件。 -
-d, --list-dirs
:列出目录,好像常规文件。 -
-L, --level
:限制递归的深度。
-
-
长视图选项(在运用
--long
时可用):-
-b, --binary
:以二进制前缀列出文件巨细。 -
-h, --header
:为每列增加标题行。 -
--git
:列出每个文件的 Git 状况,假如被追寻或疏忽。
-
eza 经过其丰厚的功用集,为文件和目录的列表显现供给了一个强壮而直观的界面。它的现代化特性,如超链接支撑和 Git 状况输出,使得阅读和办理文件变得愈加高效和愉悦。
点评 eza
eza 以其现代化的特性和改进的默许值,为指令行文件列表东西设置了新的规范。它不仅仅是 ls
的一个代替品,而是一个在功用、功用和用户体会方面都有明显进步的东西。关于那些寻求更先进的指令行文件办理东西的用户来说,eza 供给了一个值得尝试的挑选。
watchexec:主动化指令履行的现代东西
watchexec 是一个简略而独立的东西,它监督一个途径,并在检测到修正时运转指定的指令。这个东西解决了软件开发中常常遇到的一个问题:反复运转相同的指令,这既枯燥又低效。
watchexec 的长处
- 简略的调用和运用:不需求杂乱的指令行参数,易于理解和运用。
- 跨渠道支撑:在 OS X、Linux 和 Windows 上运转。
- 监控目录改变:监督当时目录及一切子目录的更改。
- 智能事情合并:关于在保存过程中运用交流/备份文件的修正器,将多个文件体系事情合并为一个。
-
疏忽文件加载:主动加载
.gitignore
和.ignore
文件,排除不需求监督的途径。 - 进程组办理:能够操控发生分支(fork)的程序。
- 供给改变途径:在环境变量或规范输入中供给发生改变的途径。
- 无需言语运转时:不绑定任何特定的言语或生态体系,不需求言语运转时。
- 多种附加功用:包含超链接支撑、挂载点细节、Selinux 上下文输出、Git 库房状况输出等。
装置装备 watchexec
在 macOS 上,能够经过一个简略的指令装置 watchexec:
brew install watchexec
运用 watchexec
watchexec 的用法示例广泛而多样,以下是一些常见的运用场景:
主动运转单元测验
当当时目录或子目录下的 JavaScript、CSS 和 HTML 文件发生改变时,主动运转 npm run build
:
watchexec -e js,css,html npm run build
监控 Python 文件改变重启服务器
当任何 Python 文件发生改变时,调用/重启 python server.py
:
watchexec -r -e py -- python server.py
排除特定目录下的文件改变
在当时目录/子目录下的任何文件改变时调用 make test
,但排除 target
目录下的一切文件:
watchexec -i "target/**" make test
仅监控文件创立事情
仅当文件被创立时运转指令,例好像步当时目录到 S3 存储桶:
watchexec --fs-events create -- s3 sync . s3://my-bucket
点评 watchexec
watchexec 以其灵活性、易用性和高效性成为主动化重复指令履行的强壮东西。它的跨渠道支撑、智能事情合并和对 .gitignore
的主动处理,使其成为开发者作业流程中不行或缺的一部分。不管是主动运转测验、重启开发服务器仍是其他主动化使命,watchexec 都能大幅进步开发功率和体会。
yazi:超快的终端文件办理器
yazi 是一款基于 Rust 言语开发,支撑异步 I/O 的终端文件办理器,旨在为用户供给一个速度快、功用全、易于运用的文件阅读体会。它具有可翻滚预览、视觉形式批量重命名、相似 Vim 的输入和挑选组件等特性,使其成为传统文件办理指令 Ranger
的现代化代替品。
yazi 的长处
- 可翻滚预览:支撑预览各种类型的文件,并在预览时翻滚文件内容。
- 视觉形式和批量重命名:在可视形式下批量挑选文件,并支撑重命名。
- 相似 Vim 的操作体会:快速在输入框中修正文件名,以及经过挑选组件决议如何翻开文件。
- 多标签和快速跳转:支撑多标签协作,经过 fzf 和 zoxide 完成快速跳转。
- 增量查找和内容查找:完成实时增量查找文件,并支撑经过 fd 和 rg 按称号或内容查找文件。
- 多项挑选和使命办理:支撑独自挑选多个文件进行操作,并经过使命体系安排如复制、剪切等操作,供给实时进度报告和使命取消功用。
装置装备 yazi
在 macOS 上装置 yazi 及其依靠非常简略,只需经过 Homebrew 履行以下指令:
brew install yazi ffmpegthumbnailer unar jq poppler fd ripgrep fzf zoxide
brew tap homebrew/cask-fonts && brew install --cask font-symbols-only-nerd-font
发动 yazi:
yazi
按 q
退出,按 ~
翻开协助菜单。
运用 yazi
yazi 供给了丰厚的键绑定和功用,以进步文件办理功率:
- 运用箭头键或
h
,j
,k
,l
进行导航。 - 运用
Space
切换选中的文件/目录,v
进入视觉形式进行批量挑选。 -
o
翻开选中的文件,d
将文件移动到垃圾箱,r
重命名文件或目录。 - 运用
/
进行增量查找,s
和S
分别经过 fd 和 rg 按称号或内容查找文件。 - 对文件/目录进行排序,例如
,
m
按修正时刻排序。
点评 yazi
yazi 以其超快的速度和丰厚的功用集,在终端文件办理领域树立了新的规范。其现代化的特性,如可翻滚预览、批量重命名、快速跳转等,极大地进步了文件办理的便利性和功率。不管是日常文件阅读仍是杂乱的文件操作,yazi 都能供给流畅和高效的体会,是一个值得尝试的终端文件办理东西。
dust:du 的现代化代替品
dust 是一个用 Rust 编写的指令行东西,旨在供给一个直观的方法来检查磁盘空间的运用情况。它结合了 du
指令的功用和 Rust 的功用,使其成为 du
的现代化代替品。
dust 的长处
-
直观的输出:dust 旨在供给一个即时的概览,显现哪些目录正在运用磁盘空间,而无需运用
sort
或head
指令。 - 智能递归:dust 会智能地递归下到文件树中找到更大的目录或文件,列出占用空间最大的一些子目录或文件,并运用色彩加以区分。
- 色彩区分:不同色彩的条形图表示树层次结构和磁盘运用情况的组合,灰色暗影用于指示子文件夹归于哪个父文件夹。
- 权限提示最小化:dust 会最大极限地削减“没有权限”音讯的打印。
装置装备 dust
在 macOS 上装置 dust,只需求履行以下指令:
brew install dust
运用 dust
dust 的运用非常简略,以下是一些根本用法:
- 直接运转
dust
以检查当时目录及其子目录的磁盘运用情况。 - 运用
dust <dir>
检查指定目录的磁盘运用情况。 -
dust -p
显现子目录的完好途径。 -
dust -n 30
显现最大的 30 个目录而不是默许的终端高度。 -
dust -d 3
显现 3 级子目录的磁盘运用情况。 -
dust -r
反转输出顺序。
点评 dust
dust 经过其简略直观的输出和智能递归功用,在磁盘空间剖析东西中树立了新的规范。它的直观界面、色彩编码和易用性使其成为了检查磁盘运用情况的理想东西。关于那些寻觅 du
现代化代替品的用户来说,dust 供给了一个功用强壮且用户友爱的解决方案。