Linux shell脚本,Linux下的西红柿时间管理法 I

全部代码在[https://github.com/younggift/tomato.git].


1. 西红柿时间管理法是什么

西红柿是一种时间管理方法,用于帮助我们集中注意力的。大致的思路是,集中注意力工作25分钟,在这个期间,拒绝电话、上网、计划外的讨论--一般而言,即使对方是你的老板,告诉他25分钟以后去找他,这样的态度他也容易接受。25分钟以后休息5分钟,无论工作得有多么high,工作有多么重要。花了多少时间不重要,集中注意力才是生产力,因为人的脑力创造性的效果并不与时间成正比。重复以上步骤4次,休息一个较长的时间。

为什么这个时间管理法叫做西红柿呢,因为人们最初使用西方厨房里煮鸡蛋计时器来倒计时25分钟和5分钟。咱们煮蛋的时候一般都是用手表,隔一会看一眼表,差不多到时间了捞出来。这个表面上合理的方法违背了计算机程序设计中的一个比较基础的原则:中断比轮询对CPU的占用率低。不过咱们似乎一向对工作和对生活按两种不同的态度。

西红柿的详细介绍可以参见[http://article.yeeyan.org/view/204108/169539],参考书是[http://book.douban.com/subject/5916234/]。

2. 我为什么要在Linux下写西红柿时间管理工具呢

最初,我写了个非常简单的脚本。大概能实现这样的功能:手动运行一个脚本,到25分钟的时候,机器叫一声,是一声巨难听的马叫,提醒我该休息了;然后手动跑另一个脚本,到5分钟的时候再叫一声。

然后,我遇到了问题。到25分钟的时候,如前所述,我可能干活正high,当时听到马叫的反应就是"啊,时间到了,马上就停",这个"马上",有一次持续达4个小时。我遇到的另一个问题是,开始工作的时候,有时忘记手动运行这个25分钟计时,直到累得不行的时候才想起来,"20分钟怎么这么长啊。"

后来,张和郑两位同学群发了个工具,就是eyefoo[http://eyefoo.com]了。这是个windows下的程序,我需要windows的时候就用它。感觉不错,对比我前面在Linux下遇到的问题,就看出了原来简陋脚本的差距了。

3. 功能需求

第一,我的脚本在25分钟结束的时候提示的"声音还不够大"。需要更强有力的事件阻止我继续工作。这并非你的意志薄弱,而是动物性使然。心理学告诉我们,当我们产生情绪冲动的时候,理智那块的大脑还没来得及得出结论。所以,心理学家又告诉我们,这个时候,延迟和打断就很有效果。你如果特想买某个东西,把它放到购物篮,间隔一段时间,等到付钱的时候,想买的冲动可能已经消失了。基本上,愤怒、想砍人什么的,都可以用这种方式化解。足够强有力的打断,然后一小段延迟。

这种强有力的打断虽然来自我自己,仍然令人不爽。所以,eyefoo做得很好,它提前一会儿告诉你,"快到点了啊。"这人性化多了。

第二,我希望25分钟结束以后,自动计时5分钟,休息5分钟结束以后,自动计时下一轮的25分钟。

第三,我仍然希望它工作在Linux下,而且还用shell来写。

未完待续

--------------------

博客会手工同步到以下地址:

[http://giftdotyoung.blogspot.com]

[http://blog.csdn.net/younggift]

Linux shell脚本,Linux下的西红柿时间管理法 I相关推荐

  1. Linux Shell脚本 Linux C程序 获取指定的范围内 or 系统可用端口

    Linux Shell脚本 && Linux C程序 获取指定的范围内 or 系统可用端口 一.源代码及其运行 1. Linux C程序getPort.c 源码 运行示例 2. 脚本文 ...

  2. linux新建脚本文件,linux shell脚本编程2—修改文件时间和创建新文件即touch命令的使用...

     在使用ls命令时,每个文件在Linux下面都会记录3个主要的修改时间: modification time(mtime,修改时间):当该文件的"内容数据"更改时,就会更新这个时 ...

  3. linux下实用小脚本,十个增加 Linux Shell 脚本趣味的小工具

    很多人误以为shell脚本只能在命令行下使用.其实shell也可以调用一些GUI组件,例如菜单,警告框,进度条等等.你可以控制最终的输出,光标位置还有各种输出效果.下面我将介绍一些工具,帮助你创建强大 ...

  4. linux 检查权限,检查目录下 文件的权限-linux shell脚本,

    检查目录下 文件的权限-linux shell脚本, #!/bin/bash #History: #2019/07/23    Fsq #This Program will check Permiss ...

  5. Linux Shell脚本中压缩包解压到目标目录下

    在Linux Shell脚本中,把一个压缩文件解压到目标目录下,使用如下代码: tar -xvf server.tar -C /opt/ 上述命令实现了把当前目录下的server.tar的压缩包,解压 ...

  6. win7下运行linux命令,win7系统32位旗舰版iso运行linux shell脚本的操作办法

    win7旗舰版是用户量最大的一款操作系统:有不少人在使用中都遇见了win7系统运行linux shell脚本的问题,对于电脑不太熟悉的朋友面对win7系统运行linux shell脚本便无计可施,其实 ...

  7. Linux shell脚本基础学习

    Linux shell脚本基础学习这里我们先来第一讲,介绍shell的语法基础,开头.注释.变量和 环境变量,向大家做一个基础的介绍,虽然不涉及具体东西,但是打好基础是以后学习轻松地前提. 1. Li ...

  8. shell脚本自动回车_干货分享:Linux shell脚本分享!!快收藏起来吧

    Linux shell 脚本分享 Shell 是一个命令解释器,处于内核和用户之间,负责把用户的指令传递给内核并且把执行结果回显给用户,Shell 它是一个用 C 语言编写的程序,它是用户使用 Lin ...

  9. Linux shell脚本编程(三)

    Linux shell脚本编程 -------------------------------------------------------------------- 注:如果你对python感兴趣 ...

最新文章

  1. C语言判断一个数是否是回文数
  2. 用 python print() 函数实现的三个特效
  3. javascript 之 面向对象【理解对象】
  4. Android_高清加载巨图方案 拒绝压缩图片
  5. python 服务端框架_GitHub - edisonlz/fastor: Python服务端开发框架-极易上手,超出你的想象!...
  6. 蓝桥杯2014年省赛C/C++ 本科B组
  7. 宏定义中#和##的用法
  8. J2me调用wap浏览器
  9. a链接下载文件名乱码
  10. 【window】重启IIS服务
  11. 计算机网络设置端口转发,怎么设置路由器端口转发功能?
  12. RecordCount = -1问题
  13. Android流媒体播放器
  14. 文菌装NAS E5:超详细!手把手教您安装黑群晖918+6.2保姆级教程
  15. 使用Vue单文件组件添加删除列表
  16. 为MacBook制作一个随身携带的windows系统
  17. 宝塔php缓存关闭,宝塔面板定期释放PHP占用内存
  18. 通信安全重重考验,阿里云通信如何打造企业级“安全感”?
  19. Lync 2013十大新功能
  20. 济南2022年全面实行电子劳动合同,爱签电子合同为HR赋能增效

热门文章

  1. 100条经典C++笔试题目及答案分享
  2. RHEL7.6安装MySQL5.6.30
  3. 流线动态图python_流的解释|流的意思|汉典“流”字的基本解释
  4. Beanstalkd源码分析—bury和kick命令的实现
  5. numpy flatten函数
  6. 解决 Linux 系统,出现“不在sudoers文件中,此事将被报告”的问题
  7. 自动驾驶公司Torc与NXP达成合作,研发雷达系统感知技术
  8. 全球及中国落地音箱行业市场发展前景展望与投资战略规划研究报告2022-2028年
  9. Centos 7 Authorization failed. Make sure polkit agent is running or run the application as superuser
  10. Power Supply---驱动框架