shell 小技巧

[!info] 阅读导览
全文 3 个技巧:默认连接 tmux session(1.1)→ 后台运行长时间命令(1.2)→ 其他技巧(1.3)

flowchart TD
    A[Shell 小技巧] --> B[1. 默认连接 tmux session<br>打开 Terminal 即进入工作状态]
    A --> C[2. 后台运行长时间命令<br>ctrl+z → bg]
    A --> D[3. 其他技巧<br>颜文字 · 命令简化 · alt+.]

1. Shell 小技巧总结及讨论

这段代码的主要功能是:如果当前运行的 Terminal 是 Apple Terminal,那么就使用 tmux 并连接到名为 hack 的 session。如果你使用其他软件,可以改成对应的名字。这个判断不会影响 IDE 里面的嵌入式终端。默认的 session 你也可以改成自己喜欢的。

这段代码虽然短,但是从此以后再也无需关心 Terminal 的状态,随用随开,随时关闭。心态超放松。

这段代码让 Tmux 和 Vim Keybindings 成了我过去十年最满意的学习投资。

image

1.1. 默认连接 tmux session

  • 技巧描述:通过在 .zshrc 中添加代码,实现在 Apple Terminal 中自动连接名为"hack"(可自定义)的 tmux session。
  • 优点:无需手动连接 tmux,随时随地打开 Terminal 即可进入工作状态。
  • 代码示例:(图片形式)
  • 讨论
    • 有人认为 tmux 和 Vim Keybindings 是非常值得学习的投资。
    • 有人质疑如果开很多 Terminal 窗口,每个窗口做不同的事情,就不需要 tmux 的 session 功能了。
    • 有人认为 tmux 的 session+windows+pane 再加上 iTerm2 的 Tab 仍然不够用。
    • 核心观点:这个技巧适合习惯使用 tmux 管理多个项目或任务的用户,能够提升工作效率。

1.2. 后台运行长时间命令

  • 技巧描述:使用 ctrl+z 将当前运行的命令挂起,然后输入 bg 回车,将命令放到后台运行。
  • 优点:避免长时间命令占用前台 Terminal,可以继续执行其他操作。
  • 替代方案:使用 tmux 新建一个 window 继续工作,无需将长时间命令放到后台。
  • 讨论:tmux 提供了更灵活的窗口管理方式,可以替代 ctrl+zbg 的组合。

1.3. 其他技巧

  • 随机颜文字:每次回车都显示随机的卖萌颜文字。
  • tmux 命令简化tmux a -t stamhe 就是 tmux attach -t stamhe(a 是 attach 的缩写);新建会话用 tmux new -s stamhe
  • 快速插入参数:使用 alt+. 在光标处插入上一条命令的最后一个参数。

[!success] 核心要点

  • 默认连接 tmux session:在 .zshrc 中配置,打开 Apple Terminal 自动 attach 到指定 session(如 hack),随用随开、随时关闭
  • 后台运行命令ctrl+z 挂起 → bg 转后台,或直接用 tmux 新开 window 更灵活
  • 命令简化tmux a -t <name> = tmux attach -t <name>(a 为 attach 缩写),新建会话用 tmux new -s <name>
  • 效率细节alt+. 插入上一条命令的最后一个参数;Tmux + Vim Keybindings 是十年期的高回报投资