Blog

  • 娱乐至死笔记

    书中介绍了印刷,电视与文化的关系,以及人们的生活受电视这种媒介的巨大的影响。对比了奥威尔与赫胥黎对人类社会的可怕预言。
    只摘了几句话:
        奥威尔警告人们将会受到外来压迫的奴役,而赫胥黎则认为,人们失去自由、成功和历史并不是“老大哥”之过。在他看来,人们会渐渐爱上压迫,崇拜那些使他们丧失思考能力的工业技术。
        我们的文化对于电视认识论的适应非常彻底,我们已经完全接受了电视对于真理、知识和现实的定义,无聊的东西在我们眼里充满的意义,语无伦次变得合情合理。
        人们感到痛苦的不是他们用笑声代替了思考,而是他们不知道自己为什么笑以及为什么不再思考。
  • mysql将一张表移动到另外的库中

    现在有db1.table1表,现在要将它放到db2中,最简的方法是mysqldump导出,再导入。

    另一种方法是

    create table db2.table2 as select * from db1.table1;

    结构,数据内容一致,但是不会复制索引以及外键

    要保持完全一致,则两步操作,先复制表结构,再复制数据

    create table db2.table2 like db1.table1;
    insert into db2.table2 select * from db1.table1;
  • linux nice命令

    nice命令用于调整程序的优先级,在top命令中看到的第三列 NI 。

    系统的优先级范围为-20(最高)至19(最低),默认优先级为0,只有root用户才可以指定0以下的优先级。

    如将mysqld以-3优先级,则运行

    nice -n -3 /usr/sbin/mysqld &

    top检查

    PID  USER  PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
    30128 mysql 17 -3 665m 42m 6740 S 0 0.5 0:00.09 mysqld

    真正的优先级是按PR+NI的值,这个值越小,越优先。

    如果-n后不加具体级别的话,默认是10,即以10 nice值运行。

    上面是开始执行命令的时候指定nice值,如果程序已经在运行,则使用renice来调整nice值。

    如上面mysqld运行的nice值是-3,进程号是30128,现在指定为-11

    # renice -11 -p 30128
    30128 (process ID) old priority -3, new priority -11

    在top中调整nice值很是方便,进入top后按”r”–>输入进程PID–>输入nice值,如

    PID to renice:30128(回车)
    Renice PID 30128 to value: -11(nice值)

     

  • vim打开光标下的文件

    当光标在某文件之上时,可以按如下操作直接打开该文件

    打开文件在当前窗口open in the same window (“goto file”)

    gf

    打开文件在新的窗口open in a new window (Ctrl-w f)

    <c-w>f

    打开文件在新的tab

    <c-w>gf open in a new tab (Ctrl-w gf)

    参考:

    http://vim.wikia.com/wiki/Open_file_under_cursor

  • vim tabs

    文本编辑器基本都有tab同时编辑多个文件,vim也不例外。甚至功能更强大。

    以例子来说vim tab的使用方法,nginx的配置文件很典型,就以它为例。

    同时编辑几个文件,可以这样,注意-p参数,这是以tab显示的关键

    vim -p nginx.conf fastcgi_params win-utf

    这时会显示3个标签

    如果这时要新加一个标签,输入

    :tabedit 简写 :tabe

    如果要关闭当前标签,除了可以常用的vim退出:wq外,可以使用

    :tabclose 简写 :tabc

    显示多个tab的列表

    :tabs

    标签的移动

    :tabm 0       move current tab to first 移动到第一个
    :tabm         move current tab to last 移动到最后一个
    :tabm {i}     move current tab to position i+1 向后移动i+1

    标签的切换

    :tabn         go to next tab 跳到下一个tab
    :tabp         go to previous tab 跳到上一个tab
    :tabfirst     go to first tab 跳到最前
    :tablast      go to last tab 跳到最后

    上面的操作太慢,在normal模式

    gt            go to next tab 跳到下一个tab
    gT            go to previous tab 跳到上一个tab
    {i}gt         go to tab in position i 跳到第i个tab

    使用快捷键则到为快速

    Ctrl-PgDn     go to next tab 跳到下一个tab
    Ctrl-PgUp     go to previous tab 跳到上一个tab

    当然可以在vimrc中规定更多的快捷键取代上面的操作。可以参考下面的链接。

    http://vim.wikia.com/wiki/Using_tab_pages

  • mysql count用法

    其实也是使用了select命令

    查询表中有多少条记录

    select count(*) from table-user;

    上面使用了count(*)会使整张表加载到内存,查询效率较低,毕竟是统计数量,使用count(ID)即可,如

    select count(ID) from table-user;

    用户男女数量统计

    select sex,count(ID) from table-user GROUP BY sex;