移动开发过程中grep、find、adb、git、repo等常用指令的使用场景

项目开发中通常都会涉及到相关指令,这是我这整理的日常使用最频繁的一些

一.find命令

    基本格式:find path expression

    1.按照文件名查找

    (1)find / -name httpd.conf  #在根目录下查找文件httpd.conf,表示在整个硬盘查找
    (2)find /etc -name httpd.conf  #在/etc目录下文件httpd.conf
    (3)find /etc -name ‘srm’  #使用通配符*(0或者任意多个)。表示在/etc目录下查找文件名中含有字符串‘srm’的文件
    (4)find . -name ‘srm*’   #表示当前目录下查找文件名开头是字符串‘srm’的文件

    2.按照文件特征查找     

    (1)find / -amin -10   # 查找在系统中最后10分钟访问的文件(access time)
    (2)find / -atime -2   # 查找在系统中最后48小时访问的文件
    (3)find / -empty   # 查找在系统中为空的文件或者文件夹
    (4)find / -group cat   # 查找在系统中属于 group为cat的文件
    (5)find / -mmin -5   # 查找在系统中最后5分钟里修改过的文件(modify time)
    (6)find / -mtime -1   #查找在系统中最后24小时里修改过的文件
    (7)find / -user fred   #查找在系统中属于fred这个用户的文件
    (8)find / -size +10000c  #查找出大于10000000字节的文件(c:字节,w:双字,k:KB,M:MB,G:GB)
    (9)find / -size -1000k   #查找出小于1000KB的文件

二、grep命令

    基本格式:find expression

  1.主要参数

    [options]主要参数:
    -c:只输出匹配行的计数。
    -i:不区分大小写
    -h:查询多文件时不显示文件名。
    -l:查询多文件时只输出包含匹配字符的文件名。
    -n:显示匹配行及行号。
    -s:不显示不存在或无匹配文本的错误信息。
    -v:显示不包含匹配文本的所有行。

    pattern正则表达式主要参数:
    \: 忽略正则表达式中特殊字符的原有含义。
    ^:匹配正则表达式的开始行。
    $: 匹配正则表达式的结束行。
    \<:从匹配正则表达 式的行开始。
    >:到匹配正则表达式的行结束。
    [ ]:单个字符,如[A]即A符合要求 。
    [ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。
    .:所有的单个字符。
    * :有字符,长度可以为0。

  2.实例 

  (1)grep ‘test’ d*  #显示所有以d开头的文件中包含 test的行
  (2)grep ‘test’ aa bb cc    #显示在aa,bb,cc文件中包含test的行
  (3)grep ‘[a-z]{5}’ aa   #显示所有包含每行字符串至少有5个连续小写字符的字符串的行
  (4)grep magic /usr/src  #显示/usr/src目录下的文件(不含子目录)包含magic的行
  (5)grep -r magic /usr/src  #显示/usr/src目录下的文件(包含子目录)包含magic的行

  (6)grep -w pattern files :只匹配整个单词,而不是字符串的一部分(如匹配’magic’,而不是’magical’),

三、adb命令
ubuntu下adb安装:apt-get install android-tools-adb
通过adb安装apk
1.adb root
2.adb remount
3.adb push apk全路径 system/app

adb install -r apk全路径” 强制安装,完成后需执行adb reboot或者kill应用重启。

四、git命令

git配置文件
/etc/gitconfig: 所有用户普遍适用的、系统的,git config –system选项
~/.gitconfig: 只适用该用户, git config –global选项
.git/config当前项目.git目录中,只适用当前项目, .git/config
每一层都覆盖上一层,也就是优先级 .gitconfig < ~/.gitconfig < /etc/gitconfig

切换分支
git branch -a 查看这个版本的分支
git checkout -b FWS920_b1 origin/FWS920_b1 创建一个新的分支并切换到新的分支上面
git checkout FWS920 切换到FWS920这个分支下面
git branch -D FWS920 删除FWS920这个分支(不能在该分支下面进行该操作)
提交代码流程
git pull 更新本地分支
git status 查看修改状态
git add . 提交新添加的所有文件
git commit -m “注释” 代码提交到本地
git push master HEAD:refs/for/master 提交到服务器

还原修改
git checkout – 文件整个路径 还原文件
git reset –hard 还原所有修改
git reset –soft HEAD^ 提交commit发现有问题之后还原到未修改之前的状态
删除未被追踪的文件

git clean -df 删除文件和目录(删除git status命令中所有untracked file,包括文件和目录)
-f 删除文件,
-df 删除文件和目录
git clean -dn 这个命令可以看看有哪此文件和目录会被删
-n 显示将要删除的文件和目录

保存修改
git stash 保存当前修改
git stash list 显示暂存列表
git stash apply 恢复暂存列表最上面的一个
git stash apply stash@2 恢复指定暂存
git stash clear 清除stash

修改配置
git config –global core.editor vim 修改默认文本编辑器
git config –global commit.template $HOME/.gitmessage.txt 修改提交模板
git config –global user.name “John Doe” 配置用户名
git config –global user.email johndoe@example.com 配置邮件地址
对比文件
git difftool “文件名” 和服务器的该文件进行对比(文件名要路径)
git difftool HEAD 直接和服务器代码进行对比(所有代码)
其它
gedit .git/info/exclude 查看修改状态时的过滤文件
gitk 打开版本控制界面
git log 查看版本最新状况(谁提交的)

五、 repo指令

切换分支
repo init -m 项目路径((如果是新建目录,repo init -u 项目路径))
repo sync
repo start i800v –all
repo list 可以查看repo所管理的projects
repo status 可以查看本地修改的文件

repo branch 可以查看每一个project所有的分支名称
repo start 创建本地的工作分支,比如:repo start 分支名 –all为所有project创建分支,repo start 分支名 kernel 为kernel project创建分支名
repo abandon 删除分支,用法和start差不多。比如:已经为kernel project创建了JB分支,用repo abandon JB kernel 命令,可以删除kernel project中的JB分支。如果执行repo abandon JB –all就会删除所有project上面名字为JB的分支。执行完repo abandon后,project会工作在no branch状态,还需手工start一个分支。
repo forall 为所有project执行命令。比如:repo forall -c git tag XXXX_XXX_V1.0_SH 代表为每一个project加入tag

repo init 初始化repo库,-u 代表url,-b代表branch,-m 代表manifest文件。比如:repo init -u gitserver:manifests.git -m i800JB.xml 代表的是从gitserver服务器上的manifests.git库中,选择i800JB.xml作为manifest文件。
这里没有-b,是由于目前所建立的manifests.git库中,仅有一个master分支。没有-b选项,默认是从manifests.git库的HEAD指针处取得manifest文件
如果没有-m选项,则代表使用的默认的manifest文件,默认的文件名称为default.xml
repo overview 查看project里面没有提交的记录。
repo upload 的时候,请用repo upload –re=REVIEW人员,系统会自动发邮件告知REVIEW人员

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值