Linux系统如何同时打开多个终端窗口?

在Linux系统中,打开多个终端是提升工作效率的常见需求,无论是同时运行多个命令、监控不同进程,还是进行多任务并行处理,掌握多种打开终端的方法都十分必要,以下将从命令行操作、图形界面交互、终端管理工具及自动化脚本等多个维度,详细介绍Linux下打开多个终端的技巧。

linux如何打开多个终端

通过命令行直接打开多个终端

Linux终端模拟器通常支持通过命令行参数控制窗口行为,直接在已有终端中输入命令即可快速打开新的终端窗口或标签页,以下是常用终端模拟器的具体用法:

GNOME Terminal(Ubuntu、Debian等默认终端)

GNOME Terminal是GNOME桌面环境的默认终端,支持丰富的参数控制:

  • 打开单个新窗口gnome-terminal
    直接启动一个新的终端窗口,与当前终端会话独立。
  • 打开多个新窗口gnome-terminal --window --window
    通过--window参数重复指定,可同时打开多个独立窗口。
  • 打开多个标签页gnome-terminal --tab --tab
    使用--tab参数在同一个窗口内创建多个标签页,适合需要快速切换的场景。
  • 指定初始命令gnome-terminal -- bash -c "echo 'Hello Linux'; exec bash"
    通过后接命令,让新终端启动后执行指定操作(如打印字符串并保持交互),exec bash确保终端不会退出。

Konsole(KDE Plasma默认终端)

Konsole是KDE桌面环境的终端模拟器,功能与GNOME Terminal类似,参数略有差异:

  • 新窗口konsole --new-tab(实际为新建标签页,konsole --new-window才是新窗口)
  • 多标签页konsole --tabs-from-stdin(通过标准输入批量创建标签页,需配合其他命令)
  • 分离窗口konsole --separate(在新进程中打开独立窗口,关闭时不影响其他终端)

Xterm(轻量级终端)

Xterm是最基础的终端模拟器,参数简洁:

  • 新窗口xterm -e "bash -c 'echo Test; exec bash'"
    通过-e参数指定初始命令,需配合exec bash保持终端交互。

其他终端模拟器

  • XFCE Terminalxfce4-terminal --tab --tab(多标签页)、xfce4-terminal --window(新窗口)
  • Terminator(支持分屏):terminator -l default(加载预设布局,可自定义分屏数量)

通过图形界面操作

对于习惯图形界面的用户,无需记忆命令,即可通过桌面环境的功能快速打开多个终端:

桌面环境右键菜单

  • GNOME/KDE/XFCE:在桌面空白处右键,通常有“打开终端”或“在终端中打开”选项,点击即可启动新终端,部分环境支持“打开终端(这里)”,直接在当前目录启动终端。
  • 文件管理器集成:在Nautilus(GNOME)、Dolphin(KDE)等文件管理器中,右键点击文件夹,选择“在终端中打开”,可直接在该目录启动终端。

终端模拟器菜单操作

  • 新建窗口:打开任意终端后,通过菜单栏“文件”→“新建终端”或快捷键(如GNOME Terminal默认Ctrl+Shift+N)创建新窗口。
  • 新建标签页:菜单栏“文件”→“新建标签”或快捷键(GNOME Terminal默认Ctrl+Shift+T),在当前窗口内创建标签页,方便多任务切换。

桌面环境快捷键

多数桌面环境预设了打开终端的快捷键,

linux如何打开多个终端

  • GNOME:默认Ctrl+Alt+T,可修改为“打开多个终端”(需通过dconf-editorgnome-tweaks自定义快捷键组合,如Ctrl+Alt+T+N触发脚本打开多个终端)。

使用终端管理工具(多窗口+会话持久化)

当需要长期管理多个终端窗口(如开发、运维场景),终端管理工具是更高效的选择,支持会话持久化、窗口分割、远程同步等功能。

Tmux(推荐)

Tmux是一个终端复用器,可将多个终端会话整合到一个窗口中,支持分屏、标签页切换、会话保存(即使退出终端,会话仍可在后台运行)。

  • 安装(Ubuntu/Debian):sudo apt install tmux;(CentOS/RHEL):sudo yum install tmux
  • 基本用法
    • 创建新会话:tmux new -s mysessionmysession为自定义会话名)
    • 在会话中创建新窗口:Ctrl+b后按cc代表create)
    • 创建水平分屏:Ctrl+b后按(左右分屏);垂直分屏:Ctrl+b后按(上下分屏)
    • 切换窗口/窗格:Ctrl+b后按w(选择窗口)、方向键(切换窗格)
    • 分离会话:Ctrl+b后按d(会话在后台运行)
    • 附加会话:tmux attach -t mysession(重新进入会话)
    • 杀死会话:tmux kill-session -t mysession

GNU Screen

Screen是更早的终端复用器,功能类似Tmux,但界面和操作稍显简陋:

  • 安装sudo apt install screen(Ubuntu/Debian)
  • 基本用法
    • 创建会话:screen -S mysession
    • 新建窗口:Ctrl+a后按c
    • 窗口列表:Ctrl+a后按w
    • 分离会话:Ctrl+a后按d
    • 恢复会话:screen -r mysession

Tmux与Screen对比

功能 Tmux Screen
会话持久化 支持(后台运行) 支持
窗口分割 支持水平/垂直分屏 需插件支持
自定义快捷键 支持(配置文件~/.tmux.conf 支持(配置文件~/.screenrc
客户端服务器分离 支持(可远程连接会话) 支持
界面友好度 高(状态栏显示会话信息) 低(无状态栏)

高级技巧与自动化

使用别名(Alias)简化命令

~/.bashrc~/.zshrc中添加别名,避免重复输入长命令:

# 打开3个标签页(GNOME Terminal)
alias multitab='gnome-terminal --tab --tab --tab'
# 打开2个独立窗口(Terminator,预设分屏布局)
alias multiwin='terminator -l vertical'

保存后执行source ~/.bashrc即可使用,如直接输入multitab快速打开3个标签页。

脚本批量打开终端

编写Shell脚本,结合循环和后台执行(&),实现批量打开终端并执行命令:

linux如何打开多个终端

#!/bin/bash
# 批量打开终端并执行不同命令
commands=(
    "ping -c 5 baidu.com"
    "top -b -n 1"
    "df -h"
)
for cmd in "${commands[@]}"; do
    gnome-terminal -- bash -c "$cmd; exec bash" &
done

保存为open_multi_term.sh,赋予执行权限(chmod +x open_multi_term.sh)后运行,即可同时打开3个终端分别执行ping、top、df命令。

远程终端管理

通过SSH连接远程主机后,可在远程主机上使用上述方法打开多个终端,

  • SSH+Tmuxssh user@remote -t 'tmux attach -t mysession'(远程连接Tmux会话)
  • SSH+多窗口ssh -t user@remote 'gnome-terminal --tab --tab'(在远程主机打开多标签页终端)

相关问答FAQs

Q1:如何设置快捷键快速打开多个终端?
A1:以GNOME桌面环境为例,可通过以下步骤设置自定义快捷键:

  1. 打开“设置”→“键盘”→“快捷键”→“自定义快捷键”;
  2. 点击“+”添加新快捷键,名称填写“打开多终端”,命令填写gnome-terminal --tab --tab(根据需求调整参数);
  3. 点击“ Disabled ”设置快捷键组合(如Ctrl+Alt+M),保存后即可通过快捷键快速打开多标签页终端。

Q2:tmux和screen哪个更适合日常使用?
A2:对于大多数用户,tmux更推荐,原因如下:

  • 功能更完善:原生支持窗口分割、状态栏显示(显示时间、会话名、窗口编号等),无需配置即可使用;
  • 操作更直观:快捷键组合(如Ctrl+b c)符合用户习惯,且可通过配置文件自定义;
  • 社区活跃:文档丰富,插件支持(如tmuxinator用于会话管理),适合日常开发和运维场景。
    Screen作为经典工具,优势在于轻量级(资源占用更低),适合对硬件配置要求极低的场景,但界面和功能已稍显过时。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/36043.html

(0)
酷番叔酷番叔
上一篇 2025年10月4日 23:54
下一篇 2025年10月5日 00:19

相关推荐

  • 如何添加旧版JDK 7仓库?

    在Linux系统中在线安装JDK 1.7需根据发行版选择合适方法,以下是详细步骤(以Ubuntu/CentOS为例),强烈建议优先考虑安全风险:JDK 1.7已于2015年停止官方支持,存在已知漏洞,仅建议用于兼容旧项目,生产环境应升级至LTS版本(如JDK 11/17),安装前准备系统更新# Ubuntu/D……

    2025年6月22日
    8000
  • SUSE如何设置默认网关?

    在SUSE Linux和openSUSE上配置默认网关主要有两种方法:通过编辑/etc/sysconfig/network/routes文件永久设置,或使用ip route add default via 命令临时设置(需重启网络服务使永久配置生效)。

    2025年7月23日
    5700
  • Linux系统下调用函数的具体步骤和方法是什么?

    在 Linux 系统中,函数调用是程序执行的核心机制,涵盖了用户空间库函数、系统调用(内核函数)以及自定义函数等多个层面,理解 Linux 下的函数调用机制,需要从底层原理、实现方式到工具使用进行系统梳理,本文将详细解析这一过程,用户空间函数调用的基本原理用户空间的函数调用主要发生在程序运行时,涉及栈帧管理、参……

    2025年10月7日
    3100
  • Linux双屏显示如何快速搞定?

    前期准备工作硬件检查确认显卡具备多输出接口(HDMI/DP/DVI/VGA)使用lspci | grep VGA 查看显卡型号通过xrandr命令检测已连接显示器:xrandr -q # 显示所有接口状态(如HDMI-1, DP-1)驱动安装NVIDIA显卡: sudo apt install nvidia-d……

    2025年7月26日
    6100
  • 光盘/USB启动安装Linux教程

    准备Linux安装介质(光盘或USB),重启电脑,开机时按特定键(如F12、F2、ESC)进入启动菜单或BIOS/UEFI设置,选择该介质为第一启动项,保存退出后电脑将从介质启动,运行Linux安装程序,按提示完成安装。

    2025年7月21日
    5900

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信