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

推荐订阅源

量子位
Google DeepMind News
Google DeepMind News
爱范儿
爱范儿
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
NISL@THU
NISL@THU
T
Threat Research - Cisco Blogs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
L
Lohrmann on Cybersecurity
V
Visual Studio Blog
Cyberwarzone
Cyberwarzone
D
Docker
The Hacker News
The Hacker News
C
CERT Recently Published Vulnerability Notes
Vercel News
Vercel News
Project Zero
Project Zero
S
Schneier on Security
aimingoo的专栏
aimingoo的专栏
I
Intezer
腾讯CDC
M
MIT News - Artificial intelligence
Hugging Face - Blog
Hugging Face - Blog
P
Palo Alto Networks Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
AWS News Blog
AWS News Blog
GbyAI
GbyAI
MongoDB | Blog
MongoDB | Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
V
Vulnerabilities – Threatpost
G
Google Developers Blog
N
Netflix TechBlog - Medium
The Cloudflare Blog
Microsoft Security Blog
Microsoft Security Blog
Y
Y Combinator Blog
A
Arctic Wolf
S
Securelist
酷 壳 – CoolShell
酷 壳 – CoolShell
Cisco Talos Blog
Cisco Talos Blog
Recent Announcements
Recent Announcements
C
Cyber Attacks, Cyber Crime and Cyber Security
L
LINUX DO - 热门话题
T
Threatpost
Latest news
Latest news
Blog — PlanetScale
Blog — PlanetScale
Security Latest
Security Latest
Engineering at Meta
Engineering at Meta
大猫的无限游戏
大猫的无限游戏
H
Help Net Security
The GitHub Blog
The GitHub Blog
T
Tor Project blog
P
Proofpoint News Feed

PixelNest

会议是效率的杀手 国庆出游记录 对居家办公的一些想法 2022 春节 《搏击俱乐部》的结局 纪念 PAI 头一回达到 100 卡片笔记法 《刑法学讲义》的部分摘录 迁移博客 《UNIX 传奇》摘录 就地过年 一点记录:docker-compose 编排不同项目间的网络 近期读的几本书 办新身份证 git 获取其他分支的单个文件或目录 我的高考成绩 推荐 2020 年上半年的 8 部影视作品 ChromeOS 开发者模式 终于下单了《守望者》 联通来电管家服务 一些实用的 bash 代码片段 关于 鸟枪换炮 《架构整洁之道》摘录 惨淡的星球大战 旧笔记本电脑 if...then... 命令行检测 SSL 证书过期时间 《程序员的职业素养》读书笔记 2019 国庆假期 在 Ubuntu 里按空格键预览 《基本穿搭》笔记 我在 Ubuntu 里安装的一些软件 让人郁闷的英语学习过程 色彩理论基础 向百度主动推送网站链接 两部电视剧 《历史的教训》摘录 Koa 获取客户端 IP 备案了 apiDoc 基础语法 《代码整洁之道》摘录 BBC 纪录片 《逻辑的乐趣》 读不下去的《原则》 蓝牙鼠标唤醒休眠的 Ubuntu Google 发布会 2018 国庆假期 开发者的时间追踪和统计 使用 curl 发送 POST 请求的几种方式 《重来 2》读书笔记 Linux 和 MacOS 命令行转换图片用法整理 《Go 语言实战》笔记 Win10 微软拼音添加小鹤双拼以及其他配置 针对不同场景临时禁用 eslint 规则的方法 《好妈妈胜过好老师》读书笔记 配置 Win10 Linux 子系统作为开发环境 又读完一本尤·奈斯博的小说 近期写 Go 的一点语法碎片整理 ffmpeg 合并 MP4 M4A 文件 睡前看手机的大问题 《局外人》读书笔记 菊次郎与佐纪 读书笔记 3 菊次郎与佐纪 读书笔记 2 菊次郎与佐纪 读书笔记 1 豆瓣图片服务器防盗链 《如何有效阅读一本书》读书笔记 - 3 《如何有效阅读一本书》读书笔记 - 2 《如何有效阅读一本书》读书笔记 - 1 Vim iskeyword 济南 图个乐 开始看不懂《西部世界》了 剧透 听到几个好故事 过周末 相亲 让人失望的 Apple 悬疑故事 AI 记忆 世纪三部曲 上帝的梦
新工具
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 命令。