- bat 增强了
cat
命令 。如果你想要有语法高亮的 cat
,可以试试 ccat 命令。
- exa 增强了
ls
命令,如果你需要在很多目录上浏览各种文件 ,ranger 命令可以比 cd
和 cat
更有效率,甚至可以在你的终端预览图片。
- fd 是一个比
find
更简单更快的命令,他还会自动地忽略掉一些你配置在 .gitignore
中的文件,以及 .git
下的文件。
- fzf 会是一个很好用的文件搜索神器,其主要是搜索当前目录以下的文件,还可以使用
fzf --preview 'cat {}'
边搜索文件边浏览内容。
grep
是一个上古神器,然而,ack、ag 和 rg 是更好的grep,和上面的 fd
一样,在递归目录匹配的时候,会使用你配置在 .gitignore
中的规则。
rm
是一个危险的命令,尤其是各种 rm -rf …
,所以,trash 是一个更好的删除命令。
man
命令是好读文档的命令,但是man的文档有时候太长了,所以,你可以试试 tldr命令,把文档上的一些示例整出来给你看。
- 如果你想搜索以前打过的命令,不要再用 Ctrl +R 了,你可以使用加强版的 hstr 。
- httpie 是一个可以用来替代
curl
和 wget
的 http 客户端,httpie
支持 json 和语法高亮,可以使用简单的语法进行 http 访问: http -v github.com
。
- tmux 在需要经常登录远程服务器工作的时候会很有用,可以保持远程登录的会话,还可以在一个窗口中查看多个 shell 的状态。
- Taskbook 是可以完全在命令行中使用的任务管理器 ,支持 ToDo 管理,还可以为每个任务加上优先级。
- sshrc 是个神器,在你登录远程服务器的时候也能使用本机的 shell 的 rc 文件中的配置。
- goaccess 这个是一个轻量级的分析统计日志文件的工具,主要是分析各种各样的 access log。
grep -rnw '/path/to/somewhere/' -e 'pattern'
r or -R is recursive,
-n is line number, and
-w stands for match the whole word.
-l (lower-case L) can be added to just give the file name of matching files.
-e is the pattern used during the search
-i stands for ignore case (optional in your case).
grep --include=\*.{c,h} -rnw '/path/to/somewhere/' -e "pattern"
grep --exclude=\*.o -rnw '/path/to/somewhere/' -e "pattern"
grep --exclude-dir={dir1,dir2,*.dst} -rnw '/path/to/somewhere/' -e "pattern"