分类: '经验技巧' 的归档
搞定tty下的mplayer的中文字幕乱码问题
没有X,只在tty下用fbdev看电影的朋友适用.其他看情况.
ubuntu的话安装ttf-arphic-uming这个字体包就会有如下字体文件了,不然的话也可以用其他字体试试.
下面两句是自定义字幕的文字大小用的.
| 引用: |
| $ cat .mplayer/config # Write your default config options here! font=/usr/share/fonts/truetype/arphic/uming.ttf subcp=cp936 subfont-autoscale=0 subfont-text-scale=20 |
用户管理(命令行)
添加一个xxx用户:
| 代码: |
| useradd xxx |
添加一个xxx用户,指定家目录为/home/xxx :
| 代码: |
| useradd -m -d /home/xxx xxx |
添加一个xxx用户,指定家目录为/home/xxx ,并指定用bash :
| 代码: |
| useradd -m -d /home/xxx -s /bin/bash xxx |
添加一个xxx用户,指定家目录为/home/xxx ,并指定用bash,同时加入yyy和zzz组(默认的xxx组也是保留的) :
| 代码: |
| useradd -m -d /home/xxx -s /bin/bash -G yyy,zzz xxx |
查看有xxx用户参与的组:
| 代码: |
| id xxx |
将xxx用户加入yyy组和zzz组:
| 代码: |
| usermod -G yyy,zzz xxx |
将xxx用户的默认shell改为dash:
| 代码: |
| usermod -s /bin/dash xxx |
删除xxx用户:
| 代码: |
| userdel xxx |
删除xxx用户,连同家目录一起删除:
| 代码: |
| userdel -r xxx |
以上命令除 id xxx 外都需要root权限.
gedit增加个外部工具,转换文本为windows格式。
大家应该知道,换行符在每个操作系统中是不一样的,比如windows是0x0d,0x0a,linux是0x0a,mac是0x0d。
这样就导致各操作系统间的文本交流出现了一点不大不小的问题,虽然windows和linux下的大部分编辑器都会知道识别这个差异,并进行相应的转换,但是像windows中的记事本这类老古董就不会了。。。。而且据说windows中用记事本的不在少数。。。所以,在linux下创建的文本文件,到了windows中用记事本一打开,就会发现所有的换行符都变成了黑方块 ![]()
不过既然知道了原理,解决起来当然是相当地方便:gedit(我的版本是 2.18.1)已经可以支持自定义的外部工具了,还可以给每个外部工具定义一个快捷键,可谓相当方便。于是就在工具-外部工具里面新建一条:名字自己取,命令如下:
| 代码: |
| #!/bin/sh tr “\n” “\r” | sed ‘s/\r/\r\n/g’ |
输入选择当前文档,输出选择替换当前文档。
不过我这个版本的gedit似乎有个小bug,就是选择了输出之后不会自动保存,想了个另外的办法:在~/.gnome2/gedit/tools目录下新建一个文件(文件名随便,不过记得加可执行权限 chmod +x 文件名)内容如下:
| 引用: |
| #!/bin/sh# [Gedit Tool] # Comment=转换为windows格式 # Name=转换为windows格式 # Shortcut=F10 # Applicability=all # Output=replace-document # Input=document tr “\n” “\r” | sed ‘s/\r/\r\n/g’ |
这个和上面说的方法其实是一样的,只不过可以避免gedit的bug。完成了以后gedit的工具菜单里面就会多出一项。然后linux下编辑好文本以后再执行一下,再保存,windows的朋友就可以轻松打开你的文件了。
本例其实很简单,主要是研究下gedit的自定义外部工具功能。 ![]()
用lighttpd代替apache2
卸载:
| 代码: |
| sudo apt-get remove apache2 |
这样会提示要卸载很多软件,包括php和phpmyadmin等等,不想卸载这些的话,可以试试
| 代码: |
| sudo aptitude remove apache2 |
,不过其实那些先卸了也不要紧,反正缓存里面有deb包的,呆会儿再装上也不费力。
安装:
| 代码: |
| sudo apt-get install lighttpd php phpmyadmin |
配置:
这样换了以后,php的配置文件变成:
/etc/php5/cgi/php.ini
lighttpd的配置文件在:
/etc/lighttpd/lighttpd.conf
好处就是省几M内存,速度暂时还没感觉出来。
Compiz下的永中窗口空白的解决办法
永中office因为其对M$ office的良好兼容性而著称,但因其界面是基于java的,在compiz下,启动以后整个窗口就都是空白的了,今天无意中得到了解决的办法,特此标记:
其实就一句话:编辑/usr/bin/eio,在”#!/bin/sh”下增加一行,写入:”export AWT_TOOLKIT=MToolkit”。
不过永中是要钱滴~我的试用期早过了,但好像就会弹出个对话框,还可以继续用。
彩色命令行
看了坛子里ee的帖子,试了下下面这个脚本,发现彩色的命令行很好玩,但不知哪里有更详细的资料。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
#!/bin/sh ############################################################ # Nico Golde Homepage: http://www.ngolde.de # Last change: Mon Feb 16 16:24:41 CET 2004 ############################################################ for attr in 0 1 4 5 7 ; do printf "ESC[%s;Foreground;Background --------------------- \n" $attr for fore in 30 31 32 33 34 35 36 37; do for back in 40 41 42 43 44 45 46 47; do printf '33[%s;%s;%sm %02s;%02s ' $attr $fore $back $fore $back done printf '33[0m\n' done printf '33[0m' done |
再帖张图:
GCC_VERSION
|
1 2 3 4 5 6 7 8 9 10 |
...... #include <ansidecl.h> ...... #ifdef GCC_VERSION int g_nGccVersion=GCC_VERSION; #else int g_nGccVersion=0; #endif printf( "GCC_VERSION: %d\n", g_nGccVersion ); ..... |
这样可以输出编译环境的GCC版本。在只有二进制文件的情况下,就可以确认一下适不适合自己的系统了。以下这段取自ansidecl.h:
|
1 2 3 4 5 6 7 |
/* This macro simplifies testing whether we are using gcc, and if it is of a particular minimum version. (Both major & minor numbers are significant.) This macro will evaluate to 0 if we are not using gcc at all. */ #ifndef GCC_VERSION #define GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__) #endif /* GCC_VERSION */ |
但目前不知道编译环境的内核版本怎么输出来。
邮件里面收到winmail.dat附件的解决办法- tnef
不知广大ubuntuer有没有收到过带个winmail.dat的邮件,我想在公司用ubuntu办公的一定收到过不少这种麻烦邮件。而你完全不知道这个附件如何打开,甚至更惨的是原本附件在邮件中的文件也不幸被这个winmail.dat吃掉了。你也许会询问这封邮件的发件人,这个时候对方多半也是一头雾水,因为人家用Outlook用的好好的,从来没有听说过这个问题,说得直白一点,就是完全不知道你在说什么。
那么winmail.dat到底是个啥东西呢?是M$的工具在编码打包你的邮件进行发送时,如果按照默认指定的RTF格式,会把格式信息按照MS自己的一套标准存放在邮件体中(在此,强烈BS M$的这种做法),造成非Outlook客户端不认识,无法正确解析。
你当然可以要求你的发件人不要用Outlook,或者不要用rtf格式,纯文本或HTML均可。但是如果你做不到这点,也还是有办法的。那就是使用 tnef。
安装:
| 代码: |
| sudo apt-get install tnef |
使用:
| 代码: |
| tnef winmail.dat |
你也可以先用tnef -t winmail.dat 来看看包含的文件。
由于发件人用的大多是windows,一般这样得到的附件在utf8的linux下,文件名都会是乱码,无奈再用convmv转一下文件名的编码:
| 代码: |
| convmv -f gbk -t utf8 –notest * |
至此大功告成。
再用一行总结一下以上过程:
| 代码: |
| tnef winmail.dat && tnef -t winmail.dat | xargs convmv -f gbk -t utf8 –notest |
