Cheat.sh在命令行或代码编辑器上显示备忘单

作弊 使用各种界面,可以访问社区驱动的Linux / UNIX命令备忘单和代码片段以及多种编程语言。它可以在Web浏览器中通过命令行(使用curl或Linux或Windows专用的命令行客户端)用作Vim,Emacs,Visual Studio Code,Sublime Text和IntelliJ Idea的插件。查找并插入代码段,而无需离开代码编辑器/命令行。
对于备忘单,此工具是社区驱动的 来源 最喜欢的 TLDR页面在Y分钟内学习X,StackOverflow等,以及您自己的存储库。
尽管该项目有其自己的备忘单存储库,但该项目实际上专注于创建一个统一的机制,以访问完善且维护良好的备忘单存储库。
此工具由Igor Chubin开发,该工具以其面向控制台的天气预报服务而闻名 重量,可用于仅使用cURL或Wget从控制台获取天气。
请注意,cheat.sh不是新的。实际上,第一次提交是在2017年5月左右进行的,使其成为GitHub上非常受欢迎的存储库。但就我个人而言,我最近见过面并且发现它非常有用,因此我认为一定有一些Linux起义读者不知道这很酷的宝石。

cheat.sh函数等

cheat.sh tar示例

cheat.sh的主要功能:

  • 支持58 程式语言,某些DBMS和1000多个最重要的UNIX / Linux命令
  • 非常快,在100毫秒内返回答案
  • 简单的curl /浏览器界面
  • 可选的命令行客户端(cht.sh)可用。这使您可以快速找到备忘单并轻松复制摘录,而无需离开终端。
  • 您可以从代码编辑器中获取代码片段,而无需打开Web浏览器,搜索代码,复制或粘贴回代码编辑器中即可插入代码片段。支持Vim,Emacs,Visual Studio Code,Sublime Text,IntelliJ Idea
  • cht.sh提供了一种特殊的隐身模式,其中选定的文本(添加到X Window系统选择缓冲区或剪贴板的文本)用作搜索查询,因此您无需触摸其他键即可获得答案。你呢

命令行客户端具有特殊的Shell模式,具有持久查询上下文和readline支持。它还具有查询历史记录,与剪贴板集成,并且支持Bash,Fish和Zsh等shell的选项卡补全。它还包括cheat.sh函数中描述的隐身模式。
Web,curl和cht.sh(命令行)界面都是 https://cheat.sh/ 但是如果你愿意的话 自托管
请注意,每个编辑器插件都支持一组不同的功能(可配置服务器,多个答案,切换注释等)。每个cheat.sh编辑器插件的功能比较如下: 编辑器整合 项目GitHub页面上的一部分。要提供备忘单吗?请参阅上面的cheat.sh指南 编辑或添加 新备忘单。您对书签命令感兴趣吗?尝试使用Marker(控制台命令书签管理器)。

使用curl /命令行客户端的cheat.sh示例

使用curl接口从命令行使用cheat.sh的示例(这需要按预期安装curl):
给我看 tar 命令备忘单:

curl cheat.sh/tar

输出示例:

$ curl cheat.sh/tar
# To extract an uncompressed archive:
tar -xvf /path/to/foo.tar

# To create an uncompressed archive:
tar -cvf /path/to/foo.tar /path/to/foo/

# To extract a .gz archive:
tar -xzvf /path/to/foo.tgz

# To create a .gz archive:
tar -czvf /path/to/foo.tgz /path/to/foo/

# To list the content of an .gz archive:
tar -ztvf /path/to/foo.tgz

# To extract a .bz2 archive:
tar -xjvf /path/to/foo.tgz

# To create a .bz2 archive:
tar -cjvf /path/to/foo.tgz /path/to/foo/

# To extract a .tar in specified Directory:
tar -xvf /path/to/foo.tar -C /path/to/destination/

# To list the content of an .bz2 archive:
tar -jtvf /path/to/foo.tgz

# To create a .gz archive and exclude all jpg,gif,... from the tgz
tar czvf /path/to/foo.tgz --exclude=*.{jpg,gif,png,wmv,flv,tar.gz,zip} /path/to/foo/

# To use parallel (multi-threaded) implementation of compression algorithms:
tar -z ... -> tar -Ipigz ...
tar -j ... -> tar -Ipbzip2 ...
tar -J ... -> tar -Ipixz ...

cht.sh也可以代替cheat.sh。

curl cht.sh/tar

想要搜寻 keyword 在每个备忘单上?用途:

curl cheat.sh/~keyword

列出Python编程语言的备忘单 random list

curl cht.sh/python/random+list

输出示例:

$ curl cht.sh/python/random+list
#  python - How to randomly select an item from a list?
#  
#  Use random.choice
#  (https://docs.python.org/2/library/random.htmlrandom.choice):

import random

foo = ['a', 'b', 'c', 'd', 'e']
print(random.choice(foo))

#  For cryptographically secure random choices (e.g. for generating a
#  passphrase from a wordlist), use random.SystemRandom
#  (https://docs.python.org/2/library/random.htmlrandom.SystemRandom)
#  class:

import random

foo = ['battery', 'correct', 'horse', 'staple']
secure_random = random.SystemRandom()
print(secure_random.choice(foo))

#  [Pēteris Caune] [so/q/306400] [cc by-sa 3.0]

交换 python 使用cheat.sh支持的其他编程语言, random+list 使用备忘单显示。
是否要从答案中删除评论?新增 ?Q 在查询的末尾(以下是使用相同的/ python / random + list的示例):

$ curl cht.sh/python/random+list?Q
import random

foo = ['a', 'b', 'c', 'd', 'e']
print(random.choice(foo))

import random

foo = ['battery', 'correct', 'horse', 'staple']
secure_random = random.SystemRandom()
print(secure_random.choice(foo))

为了获得更大的灵活性和选项卡完成功能,可以使用命令行cheat.sh客户端cht.sh。有关安装说明,请参见本文的后续部分。使用cht.sh命令行客户端的示例:
给我看 tar 命令备忘单:

cht.sh tar

列出Python编程语言的备忘单 random list

cht.sh python random list

您无需对多个关键字使用引号。
您可以使用以下特殊外壳模式启动cht.sh客户端:

cht.sh --shell

然后,您可以开始键入查询。范例:

$ cht.sh --shell
cht.sh> bash loop

如果所有查询都使用大致相同的编程语言,则可以在该上下文中直接以特殊的shell模式启动客户端。例如,使用以下命令在Bash上下文中启动:

cht.sh --shell bash

输出示例:

$ cht.sh --shell bash
cht.sh/bash> loop
...........
cht.sh/bash> switch case

将以上答案复制到剪贴板?型式 c然后按 Enter 复制或输入完整答案 C 按下 Enter 复制无评论。
型式 help cht.sh以交互外壳模式显示所有可用命令。还有 使用部分 有关更多选项和高级用法,请访问cheat.sh GitHub项目页面。

如何安装cht.sh命令行客户端

如上所述,您可以使用curl从命令行使用cheat.sh。如上所述,我们已经将其作为代码编辑器插件或使用具有某些其他功能的命令行客户端提到过。以下步骤用于安装此cht.sh命令行客户端。
如果您要为cheat.sh安装代码编辑器插件, 编辑器整合 第1页安装依赖项。
要安装cht.sh命令行客户端, curl 由于使用了命令行工具,因此必须将其安装在系统上。另一个依赖是 rlwrapcht.sh特殊外壳程序模式必需。安装这些依赖项,如下所示:

  • DebianUbuntu,Linux Mint,流行! _OS和其他基于Debian或Ubuntu的Linux发行版:
sudo apt install curl rlwrap
  • 软呢帽:
sudo dnf install curl rlwrap
  • Arch Linux,Manjaro:
sudo pacman -S curl rlwrap
  • openSUSE:
sudo zypper install curl rlwrap

在大多数(如果不是全部)Linux发行版中,软件包似乎具有相同的名称。因此,如果您的Linux发行版不在此列表中, curlrlwrap 使用发行版的程序包管理器的程序包2。下载并安装cht.sh命令行界面。
只能为用户安装(即,只有用户才能安装)或为所有用户安装。

  • 仅为用户安装。以下命令: ~/.bin 添加到您的文件夹 PATH (并且文件夹存在)。如果其中还有其他本地文件夹 PATH 更改安装cht.sh的命令安装路径。
curl https://cht.sh/:cht.sh > ~/.bin/cht.sh

chmod +x ~/.bin/cht.sh
  • 为所有用户安装(全局, /usr/local/bin):
curl https://cht.sh/:cht.sh | sudo tee /usr/local/bin/cht.sh

sudo chmod +x /usr/local/bin/cht.sh

如果第一个命令似乎只冻结了cURL输出, Enter 按键,系统将提示您输入密码以保存文件 /usr/local/bin您还可以下载并安装针对Bash或Zsh的cheat.sh命令补充。

  • 重击:
mkdir ~/.bash.d

curl https://cheat.sh/:bash_completion > ~/.bash.d/cht.sh

echo ". ~/.bash.d/cht.sh" >> ~/.bashrc
  • Zsh:
mkdir ~/.zsh.d

curl https://cheat.sh/:zsh > ~/.zsh.d/_cht

echo 'fpath=(~/.zsh.d/ $fpath)' >> ~/.zshrc

打开新的外壳/终端将加载cheat.sh补码。

Sidebar