ubuntu终端当一段时间内没有步伐运行时,自动关闭终端。 ...

打印 上一主题 下一主题

主题 975|帖子 975|积分 2925

在Ubuntu中,可以通过配置终端的超时自动关闭功能来实现“当一段时间内没有步伐运行时,自动关闭终端”。以下是几种实现方式:

方法一:使用 TMOUT 情况变量

TMOUT 是一个 Bash 情况变量,用于设置终端的超时时间。假如在一段时间内没有输入,终端会自动关闭。

  • 打开终端,输入以下下令:
    1. export TMOUT=60
    复制代码
    这里的 60 表示 60 秒内没有输入时关闭终端。你可以根据必要调解时间。
  • 将下令添加到 ~/.bashrc 文件中,使其永世收效:
    1. echo 'export TMOUT=60
    2. ' >> ~/.bashrcsource ~/.bashrc
    复制代码
  • 测试:

    • 打开终端,等候 60 秒不举行任何操作,终端会自动关闭。


方法二:使用 expect 脚本

expect 是一个自动化交互工具,可以用来监控终端运动并实现超时关闭。

  • 安装 expect:
    1. sudo apt update
    2. sudo apt install expect
    复制代码
  • 创建一个脚本文件(如 auto_close.sh):
    1. #!/usr/bin/expect
    2. set timeout 60  # 设置超时时间为 60 秒
    3. spawn bash      # 启动一个新的 Bash 会话
    4. expect {
    5.     timeout { send_user "\nNo activity for 60 seconds, closing terminal.\n"; exit }
    6.     eof { exit }
    7. }
    复制代码
  • 赋予脚本执行权限:
    1. chmod +x auto_close.sh
    复制代码
  • 运行脚本:
    1. ./auto_close.sh
    复制代码

方法三:使用 tmux
或 screen
的会话超时功能


假如你使用 tmux
或 screen
,可以配置会话超时功能。
使用 tmux



  • 安装 tmux

    1. sudo apt install tmux
    复制代码
  • 在 ~/.tmux
    .conf 中添加以下配置:
    1. set-option -g lock-after-time 60  # 60 秒无操作后锁定会话
    2. bind-key x kill-session           # 绑定快捷键关闭会话
    复制代码
  • 启动 tmux
    会话:
    1. tmux
    复制代码
使用 screen



  • 安装 screen

    1. sudo apt install screen
    复制代码
  • 在 ~/.screen
    rc 中添加以下配置:
    1. idle 60 quit  # 60 秒无操作后关闭会话
    复制代码
  • 启动 screen
    会话:
    1. screen
    复制代码

方法四:自定义 Bash 脚本

你可以编写一个 Bash 脚本来监控终端运动并实现超时关闭。

  • 创建一个脚本文件(如 timeout_close.sh):
    1. #!/bin/bash
    2. TIMEOUT=60  # 设置超时时间为 60 秒
    3. LAST_ACTIVITY=$(date +%s)
    4. while true; do
    5.     sleep 1
    6.     CURRENT_TIME=$(date +%s)
    7.     IDLE_TIME=$((CURRENT_TIME - LAST_ACTIVITY))
    8.     if [ "$IDLE_TIME" -ge "$TIMEOUT" ]; then
    9.         echo "No activity for $TIMEOUT seconds, closing terminal."
    10.         exit 0
    11.     fi
    12. done
    复制代码
  • 赋予脚本执行权限:
    1. chmod +x timeout_close.sh
    复制代码
  • 在终端中运行脚本:
    1. ./timeout_close.sh
    复制代码

注意事项



  • TMOUT 方法适用于 Bash,其他 Shell(如 Zsh)可能必要不同的配置。
  • 假如终端中有后台使命运行,超时关闭可能会导致使命中断,请谨慎使用。
渴望这些方法能资助你实现终端超时自动关闭的功能!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

天津储鑫盛钢材现货供应商

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表