星期六, 五月 15, 2010
星期二, 三月 16, 2010
星期六, 三月 28, 2009
2周工作笔记
工作2周了,一直忙的都没时间总结下
主要工作是
1 移植了cdtools libburn dvd+rw-tools 等刻录工具到arm下
除了cdtools 遇到了些困难后,其他2个还是比较顺利的,dvdtools高版本编译过不去的原因是,arm-linux-uclibc-gcc 里面没有支持多字节的库,解决方法是,重新编译工具链,加入wchar支持,但是这里比较特殊的是,dvdtools调用的这个函数用于出错提示,所以没什么用处,直接//了就好了,,,,,,,,,,,,但是知道问题在哪里还是很重要的
2 在hisi 3511上进行 音视频流的实时打包刻录,刻录上面已经实现了,剩下的就是获取音视频流,然后缓冲成文件,达到一定大小后进行刻录。
星期日, 三月 15, 2009
星期六, 三月 14, 2009
星期六, 三月 07, 2009
sed学习
sed缓冲区
sed 处理文件时,会把文件的每一行保存在一个临时缓冲区,即模式空间。
sed处理完一行后,该模式空间就被清空,下一行等待处理。因此可把模式空间内容用命令h复制并
保存在一个暂存缓冲区(holding buffer)内,然后可用命令G把它从暂存缓冲区读出一行,并放回模式空间缓冲区,
追加在模式空间内当前行的后面。
1. sed '/north/p' datafile
缺省情况下,sed会把输入的所有行都打印在标准输出上;如果某行匹配了north,则sed将该行再打印一遍。
2. sed -n '/north/p' datafile
只打印匹配north的行.
3.删除d
sed '3d' datafile 删除第3行
sed '3,$d' datafile 删除从第3行到结束
sed '$d' datafile 删除最后一行
sed '/north/d' file 删除匹配north的行
4.替换命令s
sed 's/west/north/g' datafile 全局替换
sed 's/[0-9][0-9]$/&.5/g' datafile
所有以两位数字结尾的行,后面加上.5(点5)
sed -n 's/\(Mar\)got/\1lianne/p' datafile
Mar作为标签1,将Margot 替换成Marianne
sed 's#3#88#g' datafile等价于 sed 's/3/88/g' datafile
指定行范围:逗号
sed -n '/west/,/east/p' datafile 指定在模式west和east之间的行,打印
sed -n '5,/^northeast/p' datafile 打印从第5行到第一个以northeast开头的行之间的所有行
sed '/west/,/east/s/$/**VACA**/' datafile修改从模式east和west之间的所有行,并将行尾$替换成**VACA**
多重编辑e
sed -e '1,3d' -e 's/Mike/Jones/' datafile
删除1到3行,然后再替换Mike为Jones(先全部执行完第一重编辑,再进行第二重编辑)
读入r
sed '/suan/r newfile' datafile
如果文件datafile中某一行匹配到模式suan,则在该行后读入newfile的内容。
写文件w
sed -n '/north/w newfile' datafile
如果文件datafile中某一行匹配到模式north,则把该行写入newfile文件中
追加
sed '/^north /a\\
----->THE NORTH SALES<------
插入
sed '/eastern/i\\
NEW ENGLAND REGION\\
----------------' datafile
下一行命令n
sed '/eastern/{n;s/AM/Archie/;}' datafile
如果某一行匹配到模式eastern, 命令n指示sed用下一输入行,即包含AM的那一行,
替换模式空间中的当前行,并用Archie替换AM,然后打印该行,再继续向下处理
转换y
sed '1,3y/abcdef/ABCDEF/' datafile
把第1到3行中abcedf字母转换成大写字母
退出q
sed '5q' datafile打印5行后退出
sed '/Lewis/{s/Lewid/Joseph/;q;} datafile
某行匹配到Lewis时,先用Joseph替换Lewis,然后立即退出
暂存和取用(h和g命令)
sed -e '/WE/{h;d;}' -e '/CT/{G;}' datafile
找到某一行匹配模式WE,用命令h将该行从模式缓冲区拷贝到一个暂存缓冲区,再用命令d把
该模式空间缓冲区那份拷贝删除。找到模式CT后,再用G命令取出保存在暂存缓冲区中的副本,
用其替换模式空间当前行。
暂存和互换命令x
sed -e '/Patricia/h' -e '/Margot/x' datafile
x命令将暂存区的内容和模式空间内的当前行互换
sed脚本编程:把sed组成一个文本文件,执行脚本时,sed 先将输入文件中第一行拷贝到模式缓冲区
,然后执行脚本中的所有命令;每行处理完毕后,sed再拷贝文件中下一行到模式缓冲区,
执行脚本中的所有命令。
如:
/Lewis/a\
Lewis is TOP salesperson for April!!!\
Lewis is moving to the southern district next month.\
/Margot/c\
********************
MARGOT HAS RETIRED\
********************
/i\
mployer database\
_________________
$d
%sed -f filename datafile
sed -n '/sentimeatal/p' filename
sed '1,3d' filename > newfile
sed '/[Dd]aniel/d' filename
sed -n '15,20p' filename
sed '/1,10s/Montana/MT/g' filename
sed '/March/!d' filename
sed '/March/\!d' filename
sed 's/\([Oo]cuur\)ence/\1rence' file
sed '/^....//' file删除每行前4个字符
sed '/....$//' file删除每行后4个字符
sed '/east/,/west/s/North/South/' filename
把从east到west范围内出现的第一个North替换成South,只一次
sed 's/%//g' 把%换成空格
sed 's/^0*//g' 把以0开头的数字换成空格
sed /^$/d 删除空行
sed $d 删除最后一行
sed ld 删除第一行
sed 's/[0-9][0-9]*/& password/g' file.txt 把password连接到
星期三, 二月 25, 2009
《江城子·十年生死两茫茫》有感
十年生死两茫茫。
不思量,自难忘。
千里孤坟,无处话凄凉。
纵使相逢应不识,
尘满面,鬓如霜。
夜来幽梦忽还乡。
小轩窗,正梳妆。
相顾无言,惟有泪千行。
料得年年断肠处,
明月夜,短松冈。
yn很喜欢的一首词,自己本来是不大喜欢苏轼的,但是被yn影响的,现在是越发的喜欢了,可能总是处在逆境中才能理解这份心境吧,现在也只能用'心远地自偏'来安慰自己了,和从前喜欢的很的《春江花月夜》真是2种不同的境界了,不一样的意境,却同样的喜爱。
说实话,是不甚喜欢这类苦寒作品的,但是此时的我还能更喜欢些什么呢?
十年生死两茫茫,这才刚刚几年啊,加油吧,自我勉励下,高中时的淡泊以明志,宁静而致远的心境什么时候才能在归来呢?可能在不久的将来,也可能杳无归期。
不管怎么说,苏轼还是令人佩服的,创造了那么多的第一,一生浪漫天真,能够创造科举的奇迹,但是最后却无法在科举成功的背后成功的生存下去,这样的情形和如今又是何其的相似呢?天真注定浪漫,但是天真注定不符合现实的生存规则,愿自己保持这份纯真的心境呢?还是在生活(自己的轻薄文化素养怎敢与之相提)上成为第二个苏东坡呢?