1.linux下的复制和粘贴
复制: shift + delete
粘贴:shift + insert
如何不用鼠标选择? :
2.linux下如何搜索指定目录下的文件里是否包含所需内容
find . -name *.mk | xargs grep -snR "camera" --color
查询指定目录. 下面所有文件名匹配 *.mk 然后对文件的内容grep查询是否包含 "camera" ,如果包含将内容行显示,颜色标示
上面那个命令会因为加了-R遍历检索导致出现很多重复行,解决方案两个
去掉-R,测试也可用
加awk进行处理: find . | xargs grep -sR "CNTL_Run(pstModuleMgr" --color=always | awk '!S[$0]++'
附:
如果是看android源码可以使用cgrep和jgrep
使用前需要先做些环境初始化,在代码根目录下执行 source build/envsetup.sh
之后cgrep xxx即可进行搜索
效果:会去重,有颜色标示,还有行号
kernel/linux-4.9$ cgrep rpmsg
./include/linux/mod_devicetable.h:411:/* rpmsg */
./include/linux/mod_devicetable.h:414:#define RPMSG_DEVICE_MODALIAS_FMT "rpmsg:%s"
./include/linux/mod_devicetable.h:416:struct rpmsg_device_id {
./include/linux/rpmsg.h:46:struct rpmsg_device;
./include/linux/rpmsg.h:47:struct rpmsg_endpoint;
./include/linux/rpmsg.h:48:struct rpmsg_device_ops;
3.VI打开文件下如何进行搜索
在命令模式/wanted searching string
如果有内容,想要看下一个按n即将光标移动到下一个
4.VIM行首、行尾跳转
行首:gg
行尾:shitf + g
5.VIM下如何进选择、复制;回退
选择:光标移动到待选择的开始位置;按v进行visual模式;用上下左右建进行标定(hjkl也行的)
复制:教程说在visual模型下按y即可复制,没有成功(moba客户端),可以ctrl+Delete复制
多说下:标准教程说的是Shift+delete进行复制,但不知道ctrl也行
粘贴:shift + Insert
回退:vim下经常会误操作,q!要退出太麻烦,在非I模式下按u即可回退撤销
恢复:如果想恢复撤销,按ctr+r
6.VIM退出快捷键
按住shift
zz 保存退出
zq 不保存退出,q表示放弃
之所以按住shift,其实是切换大小写
7.目录下代码行数统计
wc -l `find ./ap -name *.cpp`