当前位置:   article > 正文

Android需要掌握的shell脚本基础_android shell脚本

android shell脚本

linux中sh是链接到bash上的,所以sh与bash在功能上是没有区别的,相当于bash解析器是sh的增强版本,所以安卓开发者可以在 git bash中 测试脚本

1,shell脚本运行与输出指令

  1. $ cat test.sh
  2. echo 测试 【输出】
  3. $ /bin/bash test.sh 【调用解释器 bash】
  4. 测试
  5. $ sh test.sh 【调用解释器 sh】
  6. 测试
  7. echo $? 监测上一个命令成功情况 0 成功
  8. df -h 【查看磁盘情况】

输出结果如下:

2,变量的定义

  1. a=10 #定义一个变量 注意: a =10 a = 10 都是错误的写法
  2. echo a==$a

输出结果如下:

  1. # $0 Shell本身的文件名
  2. # $1~$n 添加到Shell的各参数值。$1是第1参数、$2是第2参数…
  3. echo 当前Shell脚本的名称是: $0
  4. echo 参数一:$1
  5. echo 参数二:$2

输出结果如下:

3,if条件判断

  1. # if 条件语句 $? 判断上一个指令是否成功 fi表示一个if语句的结尾
  2. # $*所有参数列表 $# 添加到Shell的参数个数
  3. echo "本次执行状态如下:"
  4. if(($?));then
  5. echo "本次执行失败"
  6. else
  7. echo "本次执行成功"
  8. fi
  9. echo "外界传递了参数内容是:this\ is $*"
  10. echo "外界传递了参数的数量: this\ is $#"

输出结果如下:

4,循环

seq: squeue  是一个序列的缩写,主要用来输出序列化的东西

seq常见命令参数

用法:seq [选项]... 尾数
 或:seq [选项]... 首数 尾数
 或:seq [选项]... 首数 增量 尾数
以指定增量从首数开始打印数字到尾数。
 
  -f, --format=格式     使用printf 样式的浮点格式
  -s, --separator=字符串        使用指定字符串分隔数字(默认使用:\n)
  -w, --equal-width    在列前添加0 使得宽度相同【自动补位】
      --help            显示此帮助信息并退出
      --version         显示版本信息并退出
运行结果如下:

循环代码:

  1. # for 变量名 in 取值列表
  2. # do
  3. # 命令
  4. # done 循环结束
  5. for i in `seq 1 20`
  6. do
  7. echo "遍历的数字是:$i"
  8. done

  1. # shell expr 是一个功能强大,并且比较复杂的命令,它除了可以实现整数计算,还可以结合一些选项对字符串# 进行处理,例如计算字符串长度、字符串比较、字符串匹配、字符串提取等
  2. a=0
  3. for((f=0;f<=100;f++))
  4. do
  5. # 注意:加的时候,必须加空格,否则有问题
  6. a=`expr $f + $a`
  7. done
  8. echo "最后累加1~100的值是:$a"

输出结果如下:

5,压缩

  1. # tar czf all.taz *.sh 【把所有的 sh文件,压缩成包 all.taz】
  2. # 查找当前目录下,所有的.sh文件,进行打包操作
  3. a=0
  4. for i in `find . -name "*.sh"`
  5. do
  6. a=`expr $a + 1`
  7. tar -czf shellTest+$a.tgz $i
  8. done

6,while循环

  1. i=0
  2. while((i<10))
  3. do
  4. i=`expr $i + 1`
  5. echo "遍历的值:$i"
  6. done

输出结果:

7,算术运算符

  1. # 函数的学习
  2. function test01() {
  3. echo "我是一个函数"
  4. }
  5. test01 # 调用此函数
  6. # -----
  7. # 函数里面是可以定义变量的,不要去考虑,堆 栈 弹栈,他就是脚本
  8. function test02() {
  9. var1="test1"
  10. var2="test2"
  11. echo $var1
  12. echo $var2
  13. echo "我是一个函数"
  14. }
  15. # 函数传递参数 重点
  16. function test03() {
  17. echo "我是一个函数,参数是:`expr $1`"
  18. }
  19. test03 99999 # 内置传递参数

输出结果如下:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/160681
推荐阅读
相关标签
  

闽ICP备14008679号