find -name "*.o"|xargs ls -lhS
find . -type f|xargs sed -i 's/tiger-cdr/wing-cdr/g'
01-.tar格式
解包:[*******]$ tar xvf FileName.tar
打包:[*******]$ tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)
02-.gz格式
解压1:[*******]$ gunzip FileName.gz
解压2:[*******]$ gzip -d FileName.gz
压 缩:[*******]$ gzip FileName
03-.tar.gz格式
解压:[*******]$ tar zxvf FileName.tar.gz
压缩:[*******]$ tar zcvf FileName.tar.gz DirName
04-.bz2格式
解压1:[*******]$ bzip2 -d FileName.bz2
解压2:[*******]$ bunzip2 FileName.bz2
压 缩: [*******]$ bzip2 -z FileName
05-.tar.bz2格式
解压:[*******]$ tar jxvf FileName.tar.bz2
压缩:[*******]$ tar jcvf FileName.tar.bz2 DirName
06-.bz格式
解压1:[*******]$ bzip2 -d FileName.bz
解压2:[*******]$ bunzip2 FileName.bz
07-.tar.bz格式
解压:[*******]$ tar jxvf FileName.tar.bz
08-.Z格式
解压:[*******]$ uncompress FileName.Z
压缩:[*******]$ compress FileName
09-.tar.Z格式
解压:[*******]$ tar Zxvf FileName.tar.Z
压缩:[*******]$ tar Zcvf FileName.tar.Z DirName
10-.tgz格式
解压:[*******]$ tar zxvf FileName.tgz
11-.tar.tgz格式
解压:[*******]$ tar zxvf FileName.tar.tgz
压缩:[*******]$ tar zcvf FileName.tar.tgz FileName
12-.zip格式
解压:[*******]$ unzip FileName.zip
压缩:[*******]$ zip FileName.zip DirName
13-.lha格式
解压:[*******]$ lha -e FileName.lha
压缩:[*******]$ lha -a FileName.lha FileName
14-.rar格式
解压:[*******]$ rar a FileName.rar
压缩:[*******]$ rar e FileName.rar
解压后请将rar_static拷贝到/usr/bin目录(其他由$PATH环境变量
指定的目录也行):[*******]$ cp rar_static /usr/bin/rar
15. 打包当前目录下的排除目录.git,.repo,brandy。tar czf sdk_0115.tar.gz ./android ./lichee --exclude=.git --exclude=.repo --exclude=brandy
16.debugfs
/sys/kernel/debug/memblock # ls
cat memory
>>>>>>>>>>>查找搜索的一些组合用法:
find grep xargs exec的组合用法:
---------------------------------------------------------------------------------------------------
1. 查找所有".h"文件
find /PATH -name "*.h"
2. 查找所有".h"文件中的含有"helloworld"字符串的文件
find /PATH -name "*.h" -exec grep -in "helloworld" {} /; -print
3. 查找所有".h"和".c"文件中的含有"helloworld"字符串的文件
find /PATH /( -name "*.h" -or -name "*.c" /) -exec grep -in "helloworld" {} /; -print
4. 查找非备份文件中的含有"helloworld"字符串的文件
find /PATH /( -not -name "*~" /) -exec grep -in "helloworld" {} /; -print
5查找一个文件名字,然后删除之
find ./ -name filename -exec rm {} \;
---------------------------------------------------------------------------------------------------
grep命令系统调用
grep是Linux/Unix中使用最广泛的命令之一,许多Linux系统内部都可以调用它。
(1)如果要查询目录列表中的目录,方法如下:
$ ls -l | grep ''∧d''
(2)如果在一个目录中查询不包含目录的所有文件,方法如下:
$ ls -l | grep ''∧[∧d]''
(3)用find命令调用grep,如所有C源代码中的“Chinput”,方法如下:
$find /ZhXwin -name *.c -exec grep -q -s Chinput {} ;-print
grep查找中条件的使用:
[aa@localhost ~]$ df -hT |grep 'sda1/|sda3'
/dev/sda3 ext3 225G 162G 52G 76% /
/dev/sda1 ext3 122M 12M 104M 11% /boot
[aa@localhost ~]$ df -hT |grep -e "sda1" -e "sda3"
/dev/sda3 ext3 225G 162G 52G 76% /
/dev/sda1 ext3 122M 12M 104M 11% /boot
---------------------------------------------------------------------------------------------------
使用xargs:
在当前目录下所有cpp文件里面查找efg函数:
find . -name "*.cpp" | xargs grep 'efg'
其中:xargs展开find获得的结果,使其作为grep的参数.例如:find . -name "Android.mk" | xargs grep 'libexif'
删除当前目录下所有.cpp文件
find . -name "*.cpp" | xargs rm
当前目录的文件中包含字符aaa的行数:
find . -exec grep aaa {} | wc -l
>>>>>>>>>>>修改ramdisk.img的流程。经常需要修改这个东西,用脚本比较方便。
其实ramdisk.img的内容就是/opt/froyo/out/target/product/generic/root的压缩而已
1
先查看ramdisk.img文件的类型,如果是cpio打包的,跳过第一步,这里我的ramdisk.img用gzip做了压缩:
$ file ramdisk.img
ramdisk.img: gzip compressed data, from Unix, last modified: Fri Oct 14 20:07:23 2011
如果是gzip压缩的。先解压:
$ mv ramdisk.img ramdisk.img.gz
$ gunzip ramdisk.img.gz
解压得到ramdisk.img文件。
2
$ file ramdisk.img
ramdisk.img: ASCII cpio archive (SVR4 with no CRC)
使用cpio提取ramdisk.img文件中的内容
mkdir temp
cd temp
cpio -i -F ../ramdisk.img
可以在temp目录下看到ramdisk.img中的内容。
//以上两步一起就是: gunzip -c ../ramdisk.img | cpio -i
3
修改相应要修改的文件后,再打包成ramdisk.img文件的步骤如下:
cd /temp
find . |cpio -ov -H newc |gzip > ../ramdisk.img
cd ..
ls
可以看到生成的ramdisk.img文件。
//当然也可以使用mkbootfs工具(mkbootfs工具是编译完毕Android后,在out/host/linux-x86/bin自动生成)来重新创建ramdisk,如下命令:
//$ mkbootfs ./temp | gzip > ramdisk.img
然后使用mkbootimg来重新创建boot.img,mkbootimg也可以在out/host/linux-x86/bin中找到。
$ mkimage -A arm -O linux -T multi -C none -a 0x80008000 -e 0x80008000 -n 'ARM-Linux-2.6.32-xxxx' -d ./zImage:./ramdisk.img boot.img