Sucha's Blog ~ Archive for October, 2008

10月29日 周三 23:28

GNU Screen

SCREEN 巨好用,除了可以模拟多个终端,实现快速切换之外,我还有经常用到诸如 查看屏幕输出历史(冻结屏幕输出,让其不再滚屏、然后像 VIM 或 EMACS 一样对 输出历史进行上下翻页),或者将屏幕信息直接记录到指定文件中,这在查看、分 析调试信息的时候非常有用。

我经常是在 SCREEN 中开着一个窗口 telnet 到远程机器,然后再开三四个窗口进 入不同的文件夹下工作,互不干扰,而且窗口间切换极快,跟 WIN 下的 Alt-Tab 差不多,每个窗口都是个单独的 shell 环境。另外 SCREEN 还可以自定义按键序列 (这点很类似 EMACS),自定义 caption(可以显示时间、主机和窗口信息,类似 EMACS 的 mode-line ),配合着 mlterm 半透的图片背景,相当地酷,而且可以大 大地提高工作效率!

下面是我的配置文件,存为文件 ~/.screenrc,我将按键的前缀序列改成了C-z,每 个窗口 6000 行历史信息。另外下面配置的 caption 颜色搭配估计不适合所有的终 端,主要是背景部分,在我这里是全透明的,但在 PuTTY 及 SecureCRT 下似乎不 是这样。

# create by sucha, 2008/06/04

# define the escape
escape ^zz
#defescape zz

# define scroolback lines
defscrollback 6000

# the original one
#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<"

# modified
# caption always "%3n %t%? @%u%?%? [%h]%?%=%c"
# caption always "%?%F%{+b 50}%:%{+b rr}%?%H | %D %m/%d %c | %?%F%{+b 50}%?%L=%-Lw%45>%{+b 30}%n%f* %t%{-}%+Lw%-0<"
caption always "%?%F%{+b 50}%:%{+b rr}%?%H | %D %m/%d %c | %?%F%{+b 50}%?%L=%-Lw%45>%{+b 30}%n%f* %t%{-}%+Lw%-0<"

# caption description:
# caption always "%?%F%{-b bc}%:%{-b bb}%?%C|%D|%M %d|%H%?%F%{+u wb}%? %L=%-Lw%45>%{+b by}%n%f* %t%{-}%+Lw%-0<"
# 
# Anything I don't describe is treated literally.
# 
# %?          - Start of a conditional statement.
#  %F         - Use this part of the statement if the window has focus (i.e. it
#               is the only window or the currently active one).
#  %{-b bc}   - Turn off bold, blue foreground, cyan background.
# %:          - else
#  %{-b bb}   - Turn off bold, blue foreground, blue background (this obscures
#               the text on non-focused windows and just gives a blue line).
# %?          - End conditional statement.
#  %C         - time (hh:mm, leading space) in 12 hour format
#  %D         - Three-letter day-of-week appreviation
#  %M         - Three-letter month appreviation
#  %d         - Day of the month
#  %H         - hostname
#  %?         - Start of conditional statement.
#   %F        - Use this part of the statement if the window has focus.
#   %{+u wb}  - underlined, white foreground, blue background
#  %?         - End conditional (if not focused, text remaind blue on blue).
#    %L=      - truncation/padding point.  With the 'L' qualifier, basically
#               just acts as a reference point.  Further truncation/padding is
#               done relative to here, not the beginning of the string
#    %-Lw     - window list up to but not including the current window (-),
#               show window flags (L)
#    %45>     - truncation/padding marker; place this point about 45% of the
#               way into the display area (45)
#    %{+b by} - add bold (still underlined from before), blue foreground,
#               yellow background
#      %n     - number of the current window
#      %f     - flags for current window
#      %t     - title of current window
#    %{-}     - undo last color change (so now we're back to underlined white
#               on blue)  (technically, this is a pop; a second invocation
#               would drop things back to unadorned blue on cyan)
#    %+Lw     - window list from the next window on (-), show window flags (L)
#    %-0<     - truncation/padding point.  Place this point zero spaces (0)
#               from the right margin (-).

如上,caption 的配置够麻烦的,相当不人性化,我的 caption 配置在终端下面大 概是下面的样子:

tuu | Thu 10/30  0:11 | 0$ net  1-$ home  2$* tmp  3$ bash

固定在终端的底部,从左到右的信息分别为,主机名、时间星期,最后是窗口信 息,这个长度不固定。上面我共打开了四个窗口(标号 0 ~ 3),活跃窗口是带 “*” 的那个,我将它重命名为了 “tmp”。

颜色搭配方面,在我的 mlterm 下面背景透明,前景为粗体暗红色,活跃窗口为前 景黄色。

BTW,opera 更新到 9.61 了,今天上服务器写日志的时候居然死了一次。

10月25日 周六 22:18

溯溪活动

今天参加了集团公司组织的溯溪活动,没被告知可以带拖鞋,一大帮人都光着脚丫 子入水。感觉那帮登山队的真是强,可以说是在岩石上飞跃,光着脚丫都能跑得那 么快,跟会武功似的。我们呢,只能小心翼翼地摸着石头过河,实际上跟爬着差不 多,努力学着四脚并用了。

得时时刻刻小心水中带着青苔的那种石头,外表看上去只是黑黑的,其实踩上去很 容易滑倒;碎石子很稳,但是很扎脚,不过踩得多了的话,也就不扎了;又大又平 的石头难找,看得到却走不到……

怎么那么喜欢虐待自己的脚呢?带头大哥却穿着鞋,看我们玩得还不过瘾的样子, 过了水路,又走陆路,然后又下水路……我的脚呀,已经没感觉了。

然后快到集合点的时候,我大意了,滑了一下,左脚碰得好疼,靠,换另一只脚再 上,又滑了……这回刮伤了右腿,虽说是小伤,只是觉得很郁闷。

集合点是一大片较平坦的石壁,旁边溪流湍急,专业人士拿出背包中的小煤气炉, 随便找了个水窟窿101把啤酒冰上,开始温水挂面,惬意得一塌糊涂。我只有面包可 嚼,查看着自己的伤势,跟同事杂侃,思绪乱飞……

回去时走的是大路,穿着运动鞋,那种舒服的感觉,让人一辈子都不愿意脱下来。

大自然很美,有拖鞋的话就更美了。

[101] 似乎是天上飞下来的石头砸出来的,无明显痕迹显示水流可以冲出这样完美而深邃的小坑。

10月25日 周六 05:22

今天你被黑了吗?

跟蚊子闹了半夜,折腾之后,终于知道生物进化的差别,不动点脑子、用点手段对 付它,岂不是自讨苦吃?

剩下的事情就好办了……

前几天微软大肆宣传其黑屏计划,老妈问我:“对电脑不会有影响吧?”,我说:“按 照我的方法关掉升级功能就行。”结果她的电脑没事了,可是老爸用的那台却未能幸 免,黑得一塌糊涂,这么小的几率都被他们撞上了。我才想起在我回福州之前,这 台电脑被我小小整理了一下,打开了自动升级功能,谁会料到微软却来了这一手?

他们着急得不行,这台赛扬 II 700Mhz,TNT 2 显卡,刚装了两条 256M 内存的电 脑,是我老妈转战股票市场的备用电脑。当她啥时候觉得主力不好用了,不听使唤 了,板凳的深度就显示出来了。

那 2 x 256M 的内存条,是我来福州之前在淘宝淘的,可惜是我到了福州后它才到 家,老爸装上之后觉得很不自然,说两条都安上去之后怎么只显示 256M 呢?我之 前上网搜得的结果是 815EP 的主板似乎只支持单面内存,最大只能认到 512M。没 想到做了准备,却还是买到了不合适的内存。不过也算是小小升级了,因为之前只 有 128M 给它跑 xp,那 20G 的硬盘可是嗷嗷地响……

虽然我说黑屏不会对数据有损害,可同样的是,谁知道微软后面还会有几手呢?没 办法了,跟老爸说你拿到电脑城去让人家给弄一下吧。这一弄就花了 ¥20,不过 收钱的办事就是不一样,重装了系统,两根 256M 的内存也给摆正了,盗版的 xp 终于认出了 512M 的内存,虽说只是 700Mhz 的电脑,这回也终于嗷嗷地快了。

黑屏的影响还是很大的……

10月10日 周五 21:46

无题

整个团队因为上半年的出色工作而获得了一周的假期,我又特别幸运一点,可以和 十一连在一起,足足十四天。想不出来有什么地方可以让我消磨这么长的时间,只 好回家。

买到了很便宜的机票,赶在台风肆虐福州之前来到了广州,时间还早,才十二点 半,得意时却买到了让人难受的车票,最早的时间也排到了晚上八点。我是三十号 夜里三点才回到家,看到街道边大排档里的人还不少,这么晚的夜景对我可是难得 一见,但整个人已疲惫不堪。

前面几天都是团体活动,走亲戚、郊游或是拜山。说到郊游,罗政村后面那座石山 不错,我们几家熟识的亲戚是十月一号一起过去的,那天风和日丽,游玩心情大增。 石山里面洞中有洞,上下四五层,号称六重天,都有石阶连接起来,可以上下穿 梭,旁边还有玉林话的导游,以及新编的神仙传说做旁白。而且,洞内还有类似天 井之类的通天窟窿,看着几缕阳光在洞中穿越而过,仿佛置身于武侠片中的某个神 秘境地,或许细细寻觅真的可以找到某本武侠秘籍都难说,然后闭关修炼,终成不 世出的武林奇才,云云。

重阳临近,加之表妹五号就要回南宁,大家就提前准备,今年特别,不小心打了头 阵。那天阳光很大,山上早就围满茂盛的植物,苦于没带园艺剪,处理这种牛筋似 的藤蔓植物既费精力又费时间,手上还不小心磨出了泡,不过现在已消退了……

三号拉肥升他们出来聊了半个晚上,基本上是瞎扯,发现出来混日子的人又多了一 个……

之前有跟秀峰说过逛凭祥的事情,只是没想过出发日期排到了四号,先到南宁,跟 堂哥他们一起,他在上面买了房子,正准备装修,一家人都要上去筹备,我顺便可 以帮点什么忙。

去凭祥倒很顺利,车内人都没坐满,我独占了两座,但却很天真的听从了乘务员小 姐的建议“路上有可能发生不可意料的刹车,请大家系好安全带。”真以为到凭祥的 路飞车横行,或是边境缘故,意外频出。

实际上这一条高速公路笔直得很,车也很少,两边的景色倒是不错。看惯了从广州 到玉林总共六个小时的这一路风光,相比之下,这边倒是大不一样,一大片较平坦 的缓坡之中,偶有石山耸立,石山当中包裹着绿色,而下边的缓坡则是层层叠叠的 甘蔗,未成熟的甘蔗,头上青葱,随风而动,有如波浪起伏,延绵不绝。在一片夹 杂着小石山的绿色之中,公路还横跨了一片水塘,两边映照着金光。

到凭祥已有六点,跟他和他的战友打了招呼,实际上我觉得比较拘谨,在武警们面 前不懂得如何搞笑了。他的三四个好友过来接风,还有武警美眉,手上抱着一只睡 着的吉娃娃。他说我来迟了,最搞笑、最会喝酒的兄弟都不在凭祥了。

更多地聊起他们现在的生活,以及他们周围的环境,比如凭祥这个城市等等,感觉 生活的背景差别都挺大,虽然都是两点一线,但经历的事情,却大不一样,不知如 何开口聊天了。

我住进了边防站的招待所,几个人都进来看电视,等待晚上搞酒。吉娃娃睡醒了,兴 奋得很,跑到一张床上撒了一泡,然后又歪歪斜斜地跑到门口的地毯上拉了一泡, 撕咬、拉扯了很多东西,还好小东西牙还没长全。可我这几天呆在这就惨了。

他们分岗位做不同的东西,有的人或许会很忙,比如从早上六点到晚上八点,几乎 没有空余时间,一周三次;而有的岗位相比会比较闲,比如夜班,两天出一次,每 次一个多小时……

他们更多的聊起毕业后进来之前的突击培训,“从醒过来就开始跑,一直到睡觉为 止……”,“不要说你哪里受伤,不舒服,比如你说你脚疼,教官就叫你出来在旁边练 手,俯卧撑,用你那只不受伤的脚支着……总之不会让你闲着,哪里不痛就练哪里”

晚上九点多,出来搞酒,到类似某个茶座的地方,还玩游戏,这样会让大家自觉地 把啤酒消耗得更快一些。我觉得我的运气或许比较好,一直都在看着别人喝,实在 是很不好意思……

第二天到边境看了一下,友谊关距离凭祥市区十七公里,打个的才能到,没有公交 车,跟着他们穿越了管理区,到达了国境线,又再次跨越了中越边境。他们笑着 说,他们都越过了无数次了。从边境都可以看出两国的实力、经济差距,我们这边 的建筑、外面的铺设远非越南那边可比。

在老友谊关上照了几张相,然后跟秀峰的一位同事爬上了金鸡山,感觉金鸡山也不 是很高的样子,但是石梯咋就这么高呢,有平常楼梯的四、五个阶梯那么高,往上 爬有如做高抬腿动作,真是锻炼的好地方呀。山顶上有古老的克虏伯大炮和炮台, 记录当年中法之战的历史。下山之路更难,就像是从一低矮的墙根上往下跳,每个 阶梯跳一次,然后身子抖一次,到山下的时候我跟他们说“怎么感觉我的腿抖得那么 厉害呢。”

下午睡了一觉,晚上没啥活动,因为他们第二天就要上班,还怕晚上有集合,不敢 走远。其实对于凭祥,他们也不熟的样子,平常的活动,就是一周出去搞几次酒, 还是坐那种挂铁皮的残疾车。

六号早上我就回南宁了,跟秀峰话了别,说有时间到我那去,在凭祥,大家都想不 出有啥好玩的。

回到了南宁,没有马上回家,感觉对南宁还没广州熟的样子,说不过去。一开始找 住的地方就够头疼的,在桃源路逛来逛去,问了一个当地的老先生才找到我妈推荐 的地方。然后到了朝阳广场,感觉里面遮天蔽日的,什么人都有,算命的、卖唱 的,还有其他各色人等……从这开始走,逛了步行街和旁边的几个大超市,约 L 同学 出来吃了一顿饭,那时候我已经认得一些建筑了,L 同学加班加得比我还要猛,佩 服中……半夜被堂哥交出来吃烤鱼,他才下班!又聊了一些近况,然后到他的住所参 观了一下,在他的指引下,感觉对这个城市又多了一层了解。

第二天早上逛了西大,传说中的校园要比工大大很多,风景不错,美眉也很多。我 从南门走到了东门又逛了回来,在里面吃了一顿中午饭,感觉很贵的样子。认识的 兄弟都不在里面了,而出来工作的又没时间,我真是一个闲人。今天已是正宗的重 阳节,堂哥跟我说先不要走那么快,一起吃了晚饭再走,我都没办法拒绝。

下午到航洋那边 kill time,建筑很大,里面空间也很大,只是开张的店铺不多, 很快就逛完了,出乎我的意料。又玩了会儿电动,手很钝,很费钱的样子,就没有 继续。坐在休息椅上 QQ 聊天,在等下午六点堂哥下班,盘算着吃完饭后回家应该 还不算晚……

不上班,闲得无聊的感觉太难受了。。。