求分享,有没有你们认为在终端环境中能提升效率的命令或者操作

2021-12-22 21:26:08 +08:00
 EminemW

比如 !! 可以表示上一条命令

3752 次点击
所在节点    程序员
33 条回复
rrfeng
2021-12-22 21:29:49 +08:00
多的很

今天只推荐一个 ctrl-x ctrl-e
linglin0924
2021-12-22 21:32:13 +08:00
proxychains 让命令走代理的神器 ,用来走代理下载一些包非常方便,比如

proxychains4 npm install
proxychains4 go get 等等
jaredyam
2021-12-22 21:33:09 +08:00
每次有人问这类问题的时候,底下都会有人说 ctrl + R ,然后就会有很多人说「哇,第一次见,也太好用了」。
jaredyam
2021-12-22 21:36:38 +08:00
不过我个人觉得要想做到提高(自己的)效率,还是需要定制化。比如围绕常用 shell snippets 或组合命令创建 alias 和 function ,命名上也不需要很简短,尽量有逻辑即可,使用时直接 zsh tab completion 。
GM
2021-12-22 21:38:24 +08:00
ctrl+w
ctrl+u
vision1900
2021-12-22 21:43:55 +08:00
tldr
ho121
2021-12-22 21:52:10 +08:00
ctrl
ho121
2021-12-22 21:52:43 +08:00
ctrl+d
Immortal
2021-12-22 22:03:07 +08:00
@linglin0924 #2
这个需求直接 export http_proxy 就可以了
Tink
2021-12-22 22:21:11 +08:00
cd -
jorneyr
2021-12-22 22:27:38 +08:00
终端自动补全提示插件 Fig
sutra
2021-12-22 22:37:57 +08:00
上下箭头前缀匹配历史命令。
Archeb
2021-12-22 22:53:53 +08:00
@jaredyam 哇,第一次见,也太好用了
mlhadoop
2021-12-22 23:01:45 +08:00
autojump
Volekingsg
2021-12-22 23:17:22 +08:00
可能有点点偏题,zsh 相关的。

今年的发现,先是看到 https://github.com/marlonrichert/zsh-autocomplete 爽啊,少安了很多 tab
然后发现作者几个包都挺好用的,znap 插件管理比之前用 zinit light 快了一倍。另外作者对 zsh 了解很深,几个插件的示例配置都给我带了不少新的认识。
ecnelises
2021-12-22 23:26:37 +08:00
1. Control+R 这个不多说了
2. 设置 CDPATH 这个环境变量,当你要 cd 的目的地在当前目录下找不到时,shell 会在 CDPATH 里的目录一个一个找有没有这个子目录,如果有,就跳过去
3. rm 202{1,2,3}的意思是 rm 2021 2022 2023
4. 输入 fc 命令,可以让你在一个编辑器里编辑上一条命令,保存退出即是执行
5. 命令结尾的&和 wait 命令
6. Control+Z 和 fg
7. 有正则基础的话,学会 sed/awk 基本的删除、替换、过滤只需要十分钟,更高级的文本操作可以用 perl/ruby 的-e 模式
8. sort 、find 命令以及 xargs ,懂的都懂
9. macOS 下可以用 pbcopy 和 pbpaste 操作剪贴板
10. 会一点 Shell 脚本,哪怕只是循环,有时候生活都可以轻松很多
11. zsh 里可以用首字母代替目录,比如 cd /U/u/C/A 按 Tab 就可以变成 cd /Users/user/Code/Android
12. !!执行上一条命令的时候也可以玩替换,比如上一条命令是 gcc -S -O -I./,!!:s/S/c/ 就相当于 gcc -c -O -I./
13. 除了 cd ,你还能 pushd 和 popd 来进入栈顶的目录
14. !:n 可以表示上一条命令的第 n 个参数,比如 vim a.txt ,然后 rm !:1 就是 rm a.txt
15. autojump
16. ripgrep 和 fuzzyf
piping
2021-12-22 23:31:07 +08:00
^replace^text 运行命令,适合修改 typo

!$ $_ 代表上一个命令的最后一个参数,适合加快命令输入

ctrl-z / fg/ bg /jobs 管理后台命令

ctrl-r 搜索命令 可以替代配置 fzf

配置 PS1 提示符 输出合适的信息,比如上一个命令运行时间,当前目录,当前后台程序,git 分支 (参考 starship )

======

最后是学会 vim ,`vim -` 可以处理其他程序的 stdout
kidonng
2021-12-22 23:38:54 +08:00
终端环境提升效率,从三个不同的层级都可以入手:终端、Shell 、命令行程序
- 一个功能丰富、特性完备的终端是提升效率和体验的基础,Cmder/ConEmu 、Windows Terminal 、iTerm 、kitty 都在此列(可参考 https://kidonng.notion.site/GPU-04f75ed742e042fdab6beb299f2a73bb
- Shell 配置是一个非常私人化的东西,绝大多数插件几乎都只能从形式上提升效率,只有自己知道写什么函数能解决痛点。Shell 本身没什么好选的,御三家以外生态都不太行,选哪个更多取决于自身喜好,而非 POSIX 兼容
- 命令行程序选择就多了,而且优秀的项目普适性一般也高。Go 和 Rust 几乎占领了所有上了年头的项目的替代品位置,比如 gdu 代替 ncdu 、ripgrep 代替 grep 。具体效率提升取决于能从 awesome list 挖多少宝🐶
calmzhu
2021-12-22 23:42:45 +08:00
alias
function
tmux
raycool
2021-12-23 00:49:36 +08:00
@jaredyam 哇,第一次见,也太好用了

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

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

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

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

© 2021 V2EX