android多lib库工程的自动批量构建–linux shell简介

  由于我们最后的自动打包将使用到jenkins,而jenkins又需要一些shell脚本作为粘合剂,所以我们需要学习一些简单的脚本语言。

  脚本语言很多,如Python、JAVASCRIPT,ASP,PHP,PERL,但是最终我决定选择linux 的bash shell。原因有二:

    第一:android本身基于linux,学习linux可以更好的理解android系统。

    第二:linux shell简单强大

  关于bash shell的资料非常多,我就不在这里露怯了。我们只是学习一下他的用法,快速应用。

  linux系统自带bash shell,如果你是windows用户,又想练习使用shell命令怎么办呢。可以使用linux模拟器cygwin ,默认安装就可以使用基本的命令,当然cygwin还有很多更为强大的用处,基于它可以做NDK,cocos2d-x,hadoop等开发,有兴趣的同学可以自己了解下。

 

  接下来我们介绍一些linux shell的基本用法,在以后的打包过程中,会有用到。

命令可分为两大类:

  •  bash 内置的命令

  •  程序

  如果是 bash 內建的指令, 由 bash shell 来处理; 若是程序, shell会找出这个程序,然后将控制权交给内核,内核执行完程序之后,再把控制权交换给shell.

  怎么知道哪些指令是 bash 内置的, 那些是程序呢? 通常用 "which 指令", 若

  沒有任何反应, 表示是内置的指令(除非这个指令错误、不存爱,或者不在设定的搜索范围内), 比如:

[ols3@ols3 /ols3]$ which echo    [沒有反应, 表示是内置的指令]

[ols3@ols3 /ols3]$ which ls

  /bin/ls

命令的格式

命令列通常由好几个字符串组成, 使用空格或 tab 分开. 如下所示:

command options arguments

    命令        选项      参数

   rm  -rf  /home/ols3

除了空白和 tab 之外, 每一部份, 称之为 token, 比如上面的例子中,就有三个 token: rm, -rf, /home/ols3.

当输入上面的命令时, shell 首先將它分解成 token, 然后判断是内置的指令, 或是程序, 再按之前提过的方式去执行.

  怎么知道一个命令或程序, 它有那些选项和参数呢? 通常 man 一下該指令, 就可以得到了. 例如:

  man rm

  另外, 多行指令也可以一下全部写在同一条命令中, 只要中间用 ; 分开, 如:

  ls ; mkdir test ; clear

使用vi进行脚本的编辑

  如同其他语言一样,通过我们使用任意一种文字编辑器,比如nedit、kedit、emacs、vi ,我使用的是vi ,  初次使用的时候居然一个字符都没有输入进去。

1. 普通模式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值