本文最后更新于 2024-10-26,文章内容可能已经过时。

终端管理/美化

tmux

tmux使用教程

tmux完整使用教程

tmux工具使用鼠标滚动窗口及分屏命令_tmux 鼠标滚动

tmux new -s <session-name>  
tmux kill-session -t xxx
tmux ls
tmux attach -t <session-name>
tmux switch -t xxx

tmux 是一个开源的终端复用器,允许用户在一个终端窗口中访问多个独立的终端会话。它非常适合于远程工作和长时间运行的任务,因为它允许你断开连接,然后重新连接回来,而不会中断正在运行的程序。

以下是 tmux 的一些主要特性:

  1. 会话分离:你可以在一个会话中启动程序,然后断开连接,程序会继续在后台运行。当你重新连接时,可以恢复之前的工作状态。

  2. 窗口和窗格tmux 允许你在同一个窗口中创建多个窗格(类似垂直或水平分割的窗口),每个窗格可以运行不同的程序。

  3. 可定制性tmux 提供了丰富的配置选项,允许用户根据自己的喜好和需求来定制界面和功能。

  4. 滚动缓冲区:你可以在不干扰当前程序运行的情况下,查看程序的输出历史。

  5. 同步窗格:在某些模式下,你可以在所有窗格中同步输入,这对于演示或教学非常有用。

  6. 会话共享tmux 允许多个用户连接到同一个会话,这对于协作工作非常有用。

  7. 持久性:即使系统重启,tmux 也可以恢复之前的会话状态。

安装

sudo apt install tmux

会话管理

新建会话

第一个启动的 tmux 窗口,编号是0,第二个窗口的编号是1,以此类推。这些窗口对应的会话,就是 0 号会话、1 号会话。使用编号区分会话,不太直观,更好的方法是为会话起名,命令如下

tmux new -s <session-name>    #上面命令新建一个指定名称的会话。

分离会话

tmux detach

查看所有会话

tmux ls
tmux list-session

接入会话

要想重新接入某个已存在的会话,使用如下命令:
# 使用会话编号
tmux attach -t xxx                        # xxx换成会话编号,如0,1
# 使用会话名称
tmux attach -t <session-name>

杀死会话

# 使用会话编号
tmux kill-session -t xxx    # xxx换成会话编号,如0,1

# 使用会话名称
tmux kill-session -t <session-name>

切换会话

# 使用会话编号
tmux switch -t xxx    # xxx换成会话编号,如0,1

# 使用会话名称
tmux switch -t <session-name>

窗格管理

Tmux 可以将窗口分成多个窗格(pane),每个窗格运行不同的命令。以下命令都是在 Tmux 窗口中执行。

划分窗格

# 划分上下两个窗格
tmux split-window$ 

# 划分左右两个窗格
tmux split-window -h

移动光标

# 光标切换到上方窗格
tmux select-pane -U

# 光标切换到下方窗格
tmux select-pane -D

# 光标切换到左边窗格
tmux select-pane -L

# 光标切换到右边窗格
tmux select-pane -R

交换窗格位置

# 当前窗格上移
tmux swap-pane -U

# 当前窗格下移
tmux swap-pane -D

# 当前窗格左移
tmux swap-pane -L

# 当前窗格左移
tmux swap-pane -R

快捷键

  • Ctrl+b %:划分左右两个窗格。

  • Ctrl+b ":划分上下两个窗格。

  • Ctrl+b <arrow key>:光标切换到其他窗格。是指向要切换到的窗格的方向键,比如切换到下方窗格,就按方向键↓。

  • Ctrl+b ;:光标切换到上一个窗格。

  • Ctrl+b o:光标切换到下一个窗格。

  • Ctrl+b {:当前窗格左移。

  • Ctrl+b }:当前窗格右移。

  • Ctrl+b Ctrl+o:当前窗格上移。

  • Ctrl+b Alt+o:当前窗格下移。

  • Ctrl+b x:关闭当前窗格。

  • Ctrl+b !:将当前窗格拆分为一个独立窗口。

  • Ctrl+b z:当前窗格全屏显示,再使用一次会变回原来大小。

  • Ctrl+b Ctrl+<arrow key>:按箭头方向调整窗格大小。

  • Ctrl+b q:显示窗格编号。

启用鼠标控制的窗格管理

sudo nano ~/.tmux.conf

添加set -g mouse on 后执行

tmux source-file ~/.tmux.conf

随后即可使用鼠标右键开启新窗口

复制粘贴

按住shift,随后使用鼠标右键即可

远程

code-server

安装

浏览器上的IDE:code-server安装——服务器版的vscode_idea的code server-CSDN博客

下载链接下载对应版本上传至服务器

解压code-server到/opt/目录中。

tar -zxvf [你的code-server压缩文件名] -C /opt/

将code-server指令添加进系统环境中。

ln -s /opt/[你的code-server目录名]/code-server /usr/local/bin/code-server

随后直接输入code-server,服务就自行开启了,默认是8080端口,127.0.0.1的访问ip。

配置文件在~/.config/code-server/config.yaml 可以修改密码、IP和端口等

后台运行

可以使用nohup命令或者tmux进行后台运行,以下以tmux为例

创建新的tmux终端并运行code-server(我已经通过配置文件配置了code-server)

tmux new -s code_server
code-server

只要tmux的这个终端不被删除,就会一直运行