tmux分屏操作

1 篇文章 0 订阅
1 篇文章 0 订阅

产线如果需要批量操作,有时候需要一起来一起观察日志,比如同时tail日志,同时开启top等,这样用ansible就不太合适了,以前用screen 手动一个个开窗口,或者借助xshell自带的一些功能进行处理,之前一个同事推荐了tmux,网上教程一大堆,其实大致逻辑就是新建session->新建window->划分pane, 其中比较好的一篇教程是这个:[https://www.w3cschool.cn/tmux/tji9dozt.html],但实际使用中,老是记命令其实也记不全,所以根据需求用脚本会比较好,简单记录下经常使用的脚本。

#! /bin/bash

while getopts "m:u:p:f:s:" opt
do
    case $opt in
        m)mode=$OPTARG;; #登录模式,ssh/login脚本
        u)user=$OPTARG;; #登录用户
        p)port=$OPTARG;; #登录端口
        f)file=$OPTARG;; #登录服务器清单
        s)sync=$OPTARG;; #是否所有窗口同步
    esac
done

#argNum=$#

if [ -z $file ]
then
echo "file opts must have, please check"
exit 0
fi

if [ $mode == "ssh" ] 
then
if [ -z $user ] || [ -z $port ] 
then
echo "use ssh mode must have user and port opts"
else
CMD="ssh -l $user -p $port "
fi
fi

if [ $mode == "login" ]
then
CMD="python login.py "
fi

starttmux() {
    local j=0
    for host in `cat $file`
    do
        echo "$host"
        hosts[$j]=$host
        ((j++))
    done
    tmux new-window -a -n "newWindow" "$CMD{$host[0]}"
    unset hosts[0]:
    for i in "${hosts[@]}"; do
        tmux split-window -t "newWindow" -h "$CMD $i"
        tmux select-layout -t "newWindow" tiled
    done
    tmux select-pane -t 0
    if [ $sync == "true" ]
    then
        tmux set-window-option -t "newWindow" synchronize-panes on
        tmux set synchronize-panes on        
    fi
}

starttmux
效果

在这里插入图片描述

个人公众号, 分享一些日常开发,运维工作中的日常以及一些学习感悟,欢迎大家互相学习,交流

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: Tmux是一款在Linux下非常实用的分屏工具。它可以让你在一个终端窗口中打开多个终端,并且可以自由切换和管理这些终端。Tmux的安装非常简单,你可以通过在终端中运行命令sudo apt-get install tmux来安装。\[2\]安装完成后,你可以使用tmux命令来启动TmuxTmux的功能非常强大,它支持分配操作,可以让你在断开终端连接后继续运行进程。Tmux的结构非常灵活,一个Tmux可以包含多个session,一个session可以包含多个window,一个window可以包含多个pane。你可以使用tmux命令来创建和管理这些session、window和pane。\[3\]通过使用Tmux,你可以更加高效地使用终端窗口,提高工作效率。 #### 引用[.reference_title] - *1* [Linux 分屏工具 tmux 安装、使用指南](https://blog.csdn.net/bl128ve900/article/details/96759490)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [linux 终端分屏工具 tmux](https://blog.csdn.net/qq_40787630/article/details/128311823)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Linux系统下tmux分屏使用](https://blog.csdn.net/m0_51366201/article/details/127915417)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值