linux常用命令备忘(不断更新中...)

1、模糊查找字符串
# find . "*"  | xargs  grep "ro.hardware" -rn  --color
# find -name "*.rc"  | xargs  grep "ro.hardware" -rn --color
# find -name "*.rc"  | xargs  grep -rn --color "ro.hardware"

//过滤不想看到的字符串
# adb logcat | grep -vE "SurfaceFlinger|cnss-daemon"

//递归删除*.pyc文件
# find . -name "*.pyc" -print | xargs rm -rf
# find . -name “*.pyc” -exec rm '{}' +

2、指定文件名查找字符串
# find -name AccSensor.cpp  | xargs  grep "ro.hardware" -rn

3、查找多个字符串
# grep "ro.hardware" .  -rn --color
# grep -rnE "video|audio"
# ls | egrep 'video|v4l2'  //egrep对grep的扩展,支持|符号查询

注意:-rn:
       r:递归查找;
       n:显示字符串所在的行号
       --color: 显示字体颜色

4、
<1> 删除指定一类文件(解决有些文件名中包含空格的问题)
 # find .  -name  "*.jpg" -print0 | xargs -0 rm

 注意:这里的-print0是告诉find命令,在每个输出后面以'\0'作为结束。-0是告诉xargs,使用'\0'来分隔输入,而不是空白符。这样就避免出现问题了。

<2> 删除所有.svn文件
 # find -name "*.svn" | xargs rm -rf

 <3>scp 同一局域网主机之间拷贝文件
# scp 用户名@192.168.1.2:/home/用户名/test.txt  ./  //从远程主机拷贝到本地
# scp ~/test.txt 用户名@192.168.1.2:/home/用户名/  //从本地拷贝到远程主机

5、把符合要求的文件名添加.bak后缀
# find .  -name  "*.jpg" -print0 | xargs -0 rm -I {} mv {} {}.bak

注意:其中的-I {}是告诉xargs,后面的命令中,用{}表示占位符,将会被实际的参数替代。这样就行了。

其他有用的参数还有:
 -n: 用于指定每次传递几个参数
 -d: 用于指定切分输入内容时,具体的分隔符,其他更多的参数,就参考man xargs吧。

6、后台启动程序并且不输出任何log信息
# ./test &>/dev/null &  等价于 ./test 2>/dev/null >/dev/null&
# cat test.txt &>/dev/null &

7、查看内存和cpu
# top //查看cpu占用率
# adb shell top -m 30 -t -d 3 -s cpu
# adb shell top -m 30 -t -d 3 -s cpu | grep <进程名> //只显示某个进程中线程的信息

注:-m 30:只显示cpu占用率最高前30;-t :只显示线程而不是进程 ;-d 3:每3秒更新一次;-s cpu:按cpu占用率排序
# procrank //查看内存。Uss:为当前程序所占内存(不包括库文件等)
# adb shell dumpsys meminfo //查看内存占用率
# adb shell dumpsys meminfo <pid/包名> //查看个程序的内存占用率

8、nm查看动态库、静态库、可执行文件
 nm:选项

 -A 在每个符号信息的前面打印所在对象文件名称;
 -C 输出demangle过了的符号名称;
 -D 打印动态符号;
 -l 使用对象文件中的调试信息打印出所在源文件及行号;
 -n 按照地址/符号值来排序;
 -u 打印出那些未定义的符号;

# nm -A ./* | grep h264
# nm -A *.a
# nm -a *.so
# nm -A a.out

9、ffmpeg命令参考
# ffmpeg -f v4l2 -i /dev/video0 output.mp4 //ffmpeg 获取摄像头/dev/video0并输出.mp4文件
# ffplay -f rawvideo -video_size 1920x1080 a.yuv //ffplay播放yuv文件命令
# ffprobe -v quiet -print_format json -show_format -show_streams  video.mp4  #将视频中的音视频信息,以json格式返回
或# ffprobe -show_format -show_streams video.mp4

10、android进入recovery模式更新固件
# adb reboot recovery

11、查看modem的log
# adb logcat -b radio -s RIL

12、操作指定的多个文件
# chmod +x /home/{run.sh,build.sh}

13、查看进程对应的log信息
# adb logcat | grep "993" //bluetooth情况
      
14、查看进程所打开的文件
# adb shell lsof 993
      
15、以root权限查看文件
# adb shell su -c 'cat /data/misc/wifi/wpa_supplicant.conf'
# du -sh /data

猜你喜欢

转载自blog.csdn.net/u010164190/article/details/53100196