惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
V2EX
P
Proofpoint News Feed
D
DataBreaches.Net
C
Check Point Blog
L
LangChain Blog
量子位
美团技术团队
Vercel News
Vercel News
人人都是产品经理
人人都是产品经理
N
Netflix TechBlog - Medium
V
Visual Studio Blog
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
MongoDB | Blog
MongoDB | Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Last Week in AI
Last Week in AI
The GitHub Blog
The GitHub Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
U
Unit 42
腾讯CDC
M
MIT News - Artificial intelligence
Microsoft Azure Blog
Microsoft Azure Blog
Blog — PlanetScale
Blog — PlanetScale

PixelNest

会议是效率的杀手 国庆出游记录 对居家办公的一些想法 2022 春节 《搏击俱乐部》的结局 纪念 PAI 头一回达到 100 卡片笔记法 《刑法学讲义》的部分摘录 迁移博客 《UNIX 传奇》摘录 就地过年 一点记录:docker-compose 编排不同项目间的网络 近期读的几本书 办新身份证 git 获取其他分支的单个文件或目录 我的高考成绩 推荐 2020 年上半年的 8 部影视作品 ChromeOS 开发者模式 终于下单了《守望者》 联通来电管家服务 一些实用的 bash 代码片段 关于 鸟枪换炮 《架构整洁之道》摘录 惨淡的星球大战 旧笔记本电脑 if...then... 命令行检测 SSL 证书过期时间 《程序员的职业素养》读书笔记 2019 国庆假期
新工具
2019-04-25 · via PixelNest

这里的工具,是指 Linux/Unix 操作系统里的命令行工具。这些操作系统里大都有这些命令: cat, find, grep 等,最近几年,尤其是在 Rust 语言诞生之后,出现了一些新的命令行工具,跟这些老工具有类似的功能,同时更易用,更美观,性能更好。bat 可以代替 cat,fd 可以代替 find,ripgrep 可以代替 grep,此外还有 httpie,tldr,htop 等。

下面每一节的标题下方即是该工具的官方页面或 github 链接,可以找到更详情的介绍,以及安装方法等信息。

bat

bat

一个 cat 克隆,搭配语法高亮和 Git 集成。

bat 跟 cat 都是用于输出、展示内容的,跟 cat 相比,bat 有这些特性:

  • 多种编程语言和标记语言(比如 Markdown)的语法高亮
  • 与 git 集成,可以展示当前文件内容的变更
  • 使用 -A--show-all 参数可以展示「不可打印」字符。
  • 当输出内容超过一屏,(通过把内容传递给 less 命令)自动分页。

fd

fd

fd 是一种简单又快速和用户友好的 find 替代方案。

fd 跟 bat 是同一个作者。

跟 find 相比,fd 的特性:

  • 更快
  • 搜索语法更方便,不需要 find -i name '*PATTERN*',只需 fd PATTERN
  • 彩色的终端输出
  • 默认忽略隐藏目录和文件,并且默认遵守 .gitignore

ripgrep

ripgrep

安装 ripgrep 之后,其命令是 rg。在日常的开发工作中,可以替代 grep 命令,在目录中搜索某个字符串或正则表达式。为什么是 ripgrep 这个名字,请看 What does the “rip” in ripgrep mean?

ripgrep 在搜索时,跟 fd 一样默认忽略隐藏目录和文件,遵守 .gitignore

ripgrep 比 grep 快得多。在超大型项目,比如 Linux 内核源码、Chromium 源码这种体量的代码仓库里,ripgrep 有明显的性能优势。详情可见 ripgrep is faster than {grep, ag, git grep, ucg, pt, sift}

httpie

httpie

HTTPie—aitch-tee-tee-pie—is a command line HTTP client with an intuitive UI, JSON support, syntax highlighting, wget-like downloads, plugins, and more.

httpie 的命令是 http,它可以用来代替 curl 命令。比起 curl,httpie 发起请求的写法更方便,输出结果对人类更友好。

官方的这张图,足以展示出两者的主要区别。

curl and httpie

tldr

tldr

Simplified and community-driven man pages

tldr 是更简单的 man。

使用命令行工具,免不了查文档。尤其是在用新的命令行工具,总会有一个适应的过程。对于最常见的用法,新工具往往跟旧工具差不多,没有什么学习成本。而不那么常见的用法,可能就要查文档了(前面介绍的工具的安装包里,都包含了手册,安装之后,通过 man 就可以查看对应文档了)。问题是 man page 往往看起来比较费劲,tldr 就是针对这个问题的。

例如官网这个示例,查询 tar 命令的用法:

tldr tar

这个结果并不能完全覆盖 man page 的所有内容,tar 的所有用法。不过对于日常使用,也足够了。

可以在这个链接 https://tldr.ostera.io/ 体验一下 tldr 命令。