Thursday, May 28, 2009
Wednesday, May 27, 2009
Shell命令行下如何查找并替换多个文件中的字符
如果你在shell命令行下,需要一种能快速查找并替换多个文件里字符的方法,
那么下面这行命令你一定要记住或者收藏起来,它能帮到你的。
find . -name '*.html' -print0 | xargs -0 perl -pi -e 's/SEARCHSTRING/REPLACESTRING/g'
注解:
*.html:表示查找所在目录下的所有扩展名为html的文件;
SEARCHSTRING:要查找搜索的字符;
REPLACESTRING:替换后的字符。
记住:如果替换的字符包括 ()[]/"'!? 等等这样的特殊字符,你必须在字符前加上反斜杠\ 。
使用举例:
1.创建一个新目录:
$ mkdir test
$ cd test
2.创建1.html,2.html两个文件,并分别输入i like china :
[root@localhost test]$ vi 1.html
按i进入输入模式,输入:
i like china
按esc键退出输入模式,输入
:wq
退出。
[root@localhost test$] vi 2.html
按i进入输入模式,输入:
you like china
按esc键退出输入模式,输入
:wq
退出。
3.运行替换命令,like感情不够强烈,呵呵,我们这里要将2个文件中的字符 like 换为 love :
[root@localhost test]$ find . -name '*.html' -print0 | xargs -0 perl -pi -e 's/like/love/g'
4.检查替换结果:
[root@localhost test]$ cat 1.html
i love china
[root@localhost test]$ cat 2.html
you love china
(the end)
那么下面这行命令你一定要记住或者收藏起来,它能帮到你的。
find . -name '*.html' -print0 | xargs -0 perl -pi -e 's/SEARCHSTRING/REPLACESTRING/g'
注解:
*.html:表示查找所在目录下的所有扩展名为html的文件;
SEARCHSTRING:要查找搜索的字符;
REPLACESTRING:替换后的字符。
记住:如果替换的字符包括 ()[]/"'!? 等等这样的特殊字符,你必须在字符前加上反斜杠\ 。
使用举例:
1.创建一个新目录:
$ mkdir test
$ cd test
2.创建1.html,2.html两个文件,并分别输入i like china :
[root@localhost test]$ vi 1.html
按i进入输入模式,输入:
i like china
按esc键退出输入模式,输入
:wq
退出。
[root@localhost test$] vi 2.html
按i进入输入模式,输入:
you like china
按esc键退出输入模式,输入
:wq
退出。
3.运行替换命令,like感情不够强烈,呵呵,我们这里要将2个文件中的字符 like 换为 love :
[root@localhost test]$ find . -name '*.html' -print0 | xargs -0 perl -pi -e 's/like/love/g'
4.检查替换结果:
[root@localhost test]$ cat 1.html
i love china
[root@localhost test]$ cat 2.html
you love china
(the end)
Monday, May 25, 2009
Tuesday, May 12, 2009
sftp
root@172.21.162.205:/home/xusheng/sequencing_data/$FirstDir/$dir/matching_F3/' "$FirstDir/$dir/matching_F3/$FirstDir_$dir_F3.csfasta.ma.25.2"
Sunday, May 10, 2009
linux支持超过4G内存
顺利安装centos 5.0
但是发现 top下 内存显示为3.3g不到点
没有完全识别出4g
查了大量资料后发现
主要需要2个方面设置
1.bios:在bios里开启对大内存的设置
2.安装支持大内存的kernel
centos 5.0 默认安装 for i386的内核不支持 4g+的内存
需要安装上kernel-hugemem
CODE:yum install kernel-hugemem
结果发现 centos 下面 没有 kernel-hugemem这个rpm包了
已经改名为kernel-PAE
尝试用yum安装
CODE:yum install kernel-PAE
安装好后 还需要手工修改 引导
CODE:vi /boot/grub/grub.conf
如果看到如下代码 代表PAE内核已经安装好了
title CentOS (2.6.18-8.1.4.el5PAE)
root (hd0,0)
kernel /vmlinuz-2.6.18-8.1.4.el5PAE ro root=LABEL=/
initrd /initrd-2.6.18-8.1.4.el5PAE.img
修改设置为默认启动
CODE:default=0
init 6
重启服务器
再执行top 内存已经是4.1g了
以上全部在centos 5.0系统下执行
希望以后碰到同样问题的朋友们能注意,我也遇到同样的问题,正好再网上找到这篇文章,借花献佛。
但是发现 top下 内存显示为3.3g不到点
没有完全识别出4g
查了大量资料后发现
主要需要2个方面设置
1.bios:在bios里开启对大内存的设置
2.安装支持大内存的kernel
centos 5.0 默认安装 for i386的内核不支持 4g+的内存
需要安装上kernel-hugemem
CODE:yum install kernel-hugemem
结果发现 centos 下面 没有 kernel-hugemem这个rpm包了
已经改名为kernel-PAE
尝试用yum安装
CODE:yum install kernel-PAE
安装好后 还需要手工修改 引导
CODE:vi /boot/grub/grub.conf
如果看到如下代码 代表PAE内核已经安装好了
title CentOS (2.6.18-8.1.4.el5PAE)
root (hd0,0)
kernel /vmlinuz-2.6.18-8.1.4.el5PAE ro root=LABEL=/
initrd /initrd-2.6.18-8.1.4.el5PAE.img
修改设置为默认启动
CODE:default=0
init 6
重启服务器
再执行top 内存已经是4.1g了
以上全部在centos 5.0系统下执行
希望以后碰到同样问题的朋友们能注意,我也遇到同样的问题,正好再网上找到这篇文章,借花献佛。
Subscribe to:
Posts (Atom)