http://havee.me/linux/2010-08/screen-status-bar.html

Screen 状态栏配置

GNU 的 screen 是一个很好的工具。如果需要经常或者大量的登录 linux 服务器进行操作,screen 或许还是一个不可或缺的好工具。

本文主要想探讨的主要问题是 screen 的配置脚本中如何自由定制状态栏的内容,也即 hardstatus 的内容定制。

本文所讨论的问题,对于 screen 工具的使用来说,基本没有什么指导作用,甚至可以认为是一个很无聊的问题,所以如果你是想找如何入门使用 screen 的话,那么,没有必要继续往下看了,可以参考网上很多同志的其他的介绍文档。

此 status bar 能够用来显示很多的东西,内容可以自己定制。本文主要讨论如何自己来定制下面的这样一个 hardstatus 栏或者caption 栏。

如果我们在 screen 下工作的时候,有一个地方提醒一下“你现在是在screen下”,那改多好呢?这就是我研究 hardstatus 栏的写法的目的,或者说是出发点也行。到底怎么写呢?主要是原来我自己也不是很清楚应该怎么弄,然后中文的各种介绍就是估计只是复制粘贴了一些现成的示例,所以导致认为设置 hardstatus 栏很难。

但是看了英文的原文的参考资料,就发现,其实没什么的。也蛮简单的,只是稍稍有一些麻烦。

比如说网上比较流行的一个配置是这样的:

hardstatus on
hardstatus alwayslastline
caption always "%?%F%{-b 4w}%:%{-b bb}%? %H | %l | %m-%d %c |%?%F%{-b 4w}%?%L=%-Lw%45>%{-b w4}%n%f* %t%{-}%+Lw%-0<"

下面的一个表是关于属性的设置的,其实也就是文字的颜色相关的一些设置

`{+}`    增加此属性
`{-}` 减少此属性,单独用时,表示回复到上次属性改变之前的设置值
`{!}` 反转现在的属性
`{=}` 改变当前属性,应用此处指定的属性
`d` 昏暗效果
`u` 下划线
`b` 黑体
`r` 反转
`s` 突出显示
`B` 闪烁效果
`k` 黑色
`r` 红色
`g` 绿色
`y` 黄色
`b` 蓝色
`m` 品红
`c` 蓝绿
`w` 白色
`d` 默认颜色
`.` 不改变颜色

注意,颜色的设置有前景色和背景色之分,也就是字体的颜色和背景的颜色。%{= bm},这样的表达式表达的是背景色被改为 b,前景色被改为 m。(就是这样的顺序),如果只指定一个颜色而非两个颜色的话,那么改变的是前景色,如果使用了 !,那么改变的将是背景色。也可以使用 . 来表示不改变颜色,如 %{= b.} 表示改变背景色而不改变前景色

几个例子:

  • %{+b r} 表示设置背景色为黑体的红色.就是加重的红色
  • %{= yd} 表示设置背景色为黄色,前景色为默认色
  • %{= y.} 背景色设置为黄色,前景色不变

下面的就是我的配置

hardstatus on
hardstatus alwayslastline
hardstatus string "%{= G}%-Lw%{= .Y}%50> %n*%f %t%{= G}%+Lw%< %{= G}%-=%D %c:%s %m/%d/%Y"
startup_message off
vbell off
autodetach on
msgwait 1
shell bash
termcapinfo xterm|xterms|xs|rxvt|urxvt|tila ti@:te@
bindkey -k F1 prev
bindkey -k F2 next

参考文档: http://www.gnu.org/software/screen/manual/screen.html#Message-Line

Screen 状态栏配置的更多相关文章

  1. iOS平台设置系统状态栏(通知栏、顶部状态栏)样式背景颜色或透明

    5+App开发 状态栏 配置系统状态栏样式 iOS平台可支持对系统状态栏样式的配置,在应用manifest.json文件的plus->distribute->apple下添加UIStatu ...

  2. Archlinux + Dwm 配置流程

    本着学习C的态度来了解dwm,本身作为一个i3wm的追崇者,与dwm会擦出怎么样的火花呢? 下载安装dwm archlinuxcn源配置 编辑/etc/pacman.conf文件,添加bfsu的arc ...

  3. 终端环境之tmux

    今天继续介绍我的终端环境,tmux. why tmux? 用一个工具的第一问自然还是为什么要用.其实当时使用tmux的原因很简单.工作中经常需要长时间的编译.总想要下班后要关机的情况下,(肯定有人问我 ...

  4. [转载] Tmux 速成教程:技巧和调整

    原文: http://blog.jobbole.com/87584/ 决定从 screen 转向 tmux 了, 非常喜欢 tmux 的窗格功能. 简介 有些开发者经常要使用终端控制台工作,导致最终打 ...

  5. ABAP屏幕基础

    Select语句的使用 关键字into后可以加 structure(结构体), internal table(内表) 和 fieldlist(字段列表) Authority 权限 程序员可以根据权限对 ...

  6. OFBiz进阶之HelloWorld(二)创建热部署模块

    参考文档 https://cwiki.apache.org/confluence/display/OFBIZ/OFBiz+Tutorial+-+A+Beginners+Development+Guid ...

  7. Apache OFBiz源码解读之MVC模型

    节点解析 request-map 你可以将其理解为controller的配置,如果你了解或使用过struts的配置或springmvc的annotation,就会发现这个定义跟它们是很相似的: [ht ...

  8. ubuntu重复登录问题

    第一次遇到: 昨天好不容易装好了驱动,紧接着装了CUDA,cuDNN,Anaconda,VSCode等等.然后安装pytorch的时候遇到了下载的问题,后来也算搞定了.但是在更换了显示器后重启(好像是 ...

  9. Linux:Gentoo系统的安装笔记(四)

    本来以为结束,谁知离正常的系统还是比较远,不过不放弃,这期的笔记我敢肯定是最后一期了,写了那么多我也觉得烦,被gentoo折磨烦了. 安装KDE桌面 选择正确的配置文件 先获取root权限来安装桌面环 ...

随机推荐

  1. Android开发——Activity启动模式详解

    1. Activity的启动模式 本文原创,转载请注明出处:http://blog.csdn.net/seu_calvin/article/details/52054893 1.1 Standard标 ...

  2. search Paths $(SRCROOT)和$(PROJECT_DIR)区别

    $(SRCROOT)代表的时项目根目录下 $(PROJECT_DIR)代表的是整个项目 PS:往项目添加文件时,例如.a等,要先showinfinder ,复制到项目中,然后再拖到xcode项目中

  3. appium之android_uiautomator定位

    前言 appium就是封装android的uiautomator这个框架来的,所以uiautomator的一些定位方法也可以用 text 1.通过text文本定位语法 new UiSelector() ...

  4. 大数据学习——hive的sql练习题

    ABC三个hive表 每个表中都只有一列int类型且列名相同,求三个表中互不重复的数 create table a(age int) row format delimited fields termi ...

  5. Python中你不知道的特性

    内置函数print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False) 本函数是实现对象以字符串表示的方式格式化输出到流文件对象fil ...

  6. php 修改

    <?php$id = $_GET['id'];$db = new mysqli("localhost","root","root",& ...

  7. 在ubuntu上安装npm

    sudo apt install npm 执行上面的安装命令,会报错: Reading package lists... Done Building dependency tree Reading s ...

  8. .NET重构(五):存储过程、触发器和函数的区别

    导读:在触发器的学习过程中,师傅讲了它的耦合性高,建议我能用存储过程,那到底什么是存储过程呢,自己也不是特别了解,还有就是,触发器也算是一种特殊的存储过程,为什么就不建议多用呢?接下来,就谈谈触发器. ...

  9. vue 使用Echarts 环形图 自定义legend formatter 富文本标签

    main.js 引入echarts // 引入echarts import Echarts from 'echarts' Vue.prototype.$echarts = Echarts   < ...

  10. 【Luogu】P1972HH的项链(链表+树状数组)

    题目链接 难题,所以会讲得细一些. 首先我们想如何统计区间[l,r]内不同贝壳的个数. 第一个思路就是线段树/树状数组,query(1,r)-query(1,l-1)对不对? 然而这样是不对的. 然后 ...