tldr.py: 妈妈再也不用担心我使用命令行了

2015-10-25 22:19:14 +08:00
 xvid73

tldr.py 实际上是 tldr 的一个命令行程序,帮助你快速查看命令的常用用法。tldr 是什么呢?按照官方的说法:

Simplified and community-driven man pages.

也就是说,是精简版的 man 。相比大而全的 man , tldr 是把常用和命令和选项提炼了出来方便你使用。之前也有一个很火的项目: the-art-of-command-line, 它的介绍是:

Master the command line, in one page

tldr 现在已经有很多大家贡献的命令,或许有些没有,或许有些不够好,这也许是一个诟病。但是不用担心,因为你完全可以自己总结,使用并维护自己的那一份,感觉不错的也可以去官方 repo 提个 PR 分享一下。当然,这是方便使用而已,需要深入使用或者其他场景使用的,那就使用 man 吧。


下面说说这个 tldr.py , 具体的安装和初始化工作这里不再赘述,请前往 github 了解更为详细的说明

具体日常的使用, 比如说想知道 du 这个命令的常用用法,

$ tldr find du

Estimate file space usage

- get a sum of the total size of a file/folder in human readable units

  du -sh {{file/directory}}

- list file sizes of a directory and any subdirectories in KB

  du -k {{file/directory}}

- get recursively, individual file/folder sizes in human readable form

  du -ah {{directory}}

- list the KB sizes of directories for N levels below the specified directory

  du --max-depth=1

当然,实际上的显示是有颜色的,你也可以在配置文件中自行修改调整。基本的使用就是这样。


详细的用法和说明都在 github 上。

有问题和新的想法可以提。有兴趣的试用一下吧~期待测试回馈和使用感受
就酱。

7802 次点击
所在节点    分享创造
32 条回复
xvid73
2015-10-31 07:30:02 +08:00
@wyf88 你安装的是 tldr.py 么?注意之前还有一个叫做 tldr 的,这个是需要联网的,因为它是直接发请求的。 tldr.py 是使用本地文件的,是不需要联网的 。你看看是不是这样 _(:3
xvid73
2015-10-31 07:31:36 +08:00
@wyf88 安装请使用 `pip install tldr.py`, homebrew 那边我好像没搞啊。请继续反馈后续情况。
wyf88
2015-10-31 17:31:25 +08:00
@xvid73 哦抱歉的确是我搞错了,我以为和这个 https://github.com/tldr-pages/tldr-python-client 是一样的。楼主这个不需要联网的很方便啊,赞!
xvid73
2015-10-31 18:31:14 +08:00
@wyf88 恩,官方那边的话 issue 已经提及过新的 tldr.py ,但是我想先测试使用一段时间再去提个 PR 合进去,如果有许多问题的话就难为情了 _(:3
基于本地文件的话不但速度快,而且可以自定义使用自己修改的 man pages 呢~
Chrics
2015-10-31 22:42:44 +08:00
没有 mac 版不开心
timqian
2015-10-31 23:43:46 +08:00
的确是一个痛点,看到这个工具后感觉的确是这样。机会藏在生活中的不便之处。。。
xvid73
2015-11-01 09:10:52 +08:00
@Chrics 没有环境测试 mac, 不过你可以用 virtualenv 建个虚拟环境装一下试试看,看看能不能用,我估计应该可以用的 _(:3
vivisidea
2015-11-02 12:17:37 +08:00
@iambic
cheat 好评

xx@xx-SSD:~$ cheat find
# To find files by case-insensitive extension (ex: .jpg, .JPG, .jpG):
find . -iname "*.jpg"

# To find directories:
find . -type d

# To find files:
find . -type f

# To find files by octal permission:
find . -type f -perm 777

# To find files with setuid bit set:
find . -xdev \( -perm -4000 \) -type f -print0 | xargs -0 ls -l

# To find files with extension '.txt' and remove them:
find ./path/ -name '*.txt' -exec rm '{}' \;

# To find files with extension '.txt' and look for a string into them:
find ./path/ -name '*.txt' | xargs grep 'string'

# To find files with size bigger than 5 Mb and sort them by size:
find . -size +5M -type f -print0 | xargs -0 ls -Ssh | sort -z

# To find files bigger thank 2 MB and list them:
find . -type f -size +20000k -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'

# To find files modified more than 7 days ago and list file information
find . -type f -mtime +7d -ls

# To find symlinks owned by a user and list file information
find . -type l --user=username -ls

# To search for and delete empty directories
find . -type d -empty -exec rmdir {} \;

# To search for directories named build at a max depth of 2 directories
find . -maxdepth 2 -name build -type d

# To search all files who are not in .git directory
find . ! -iwholename '*.git*' -type f

# Find all files that have the same node (hard link) as MY_FILE_HERE
find . -type f -samefile MY_FILE_HERE 2>/dev/null
vivisidea
2015-11-02 12:20:16 +08:00
```
vivi@vivi-SSD:~$ seq 9 | sed 'H;g' | awk -v RS='' '{for(i=1;i<=NF;i++)printf("%dx%d=%d%s", i, NR, i*NR, i==NR?"\n":"\t")}'
1x1=1
1x2=2 2x2=4
1x3=3 2x3=6 3x3=9
1x4=4 2x4=8 3x4=12 4x4=16
1x5=5 2x5=10 3x5=15 4x5=20 5x5=25
1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36
1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49
1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64
1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81
```

cheat awk 里面看到有个 9x9 乘法表的 example 。。。
picasso250
2015-11-02 14:00:34 +08:00
http://git.oschina.net/xiaochi2/tldr-go

我觉得只要把文档同步到国内就解决了吧。欢迎试用:

go get git.oschina.net/xiaochi2/tldr-go
tldr-go tar
xvid73
2015-11-02 15:40:02 +08:00
@vivisidea 我没用过 cheat ,不过看到 find 那么多例子想到一点, tldr 的倾向是例子不要太多,五六个最多。
就实现方式和发展而言,个人是看好 tldr 的。因为它把 man pages 和具体实现分开了。而其他语言版本的客户端在使用过程中会反馈给主 repo tldr , man pages 会越来越完善的。
xvid73
2015-11-02 15:44:27 +08:00
@picasso250 赞~

使用本地文件不仅速度快,可以离线使用,而且可以自定义修改使用自己的习惯,改改本地的 markdown 文件就马上可以用了。使用远端的我感觉总归是麻烦些。

使用在线的好处有可以保持最新,不用额外的配置。

个人比较喜欢本地的,实现时就用了本地的文件了 _(:3

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/231008

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX