Shell能作什么git
将一些复杂的命令简单化(平时咱们提交一次github代码可能须要不少步骤,可是能够用Shell简化成一步)
能够写一些脚本自动实现一个工程中自动更换最新的sdk(库)
自动打包、编译、发布等功能
清理磁盘中空文件夹
总之一切有规律的活脚本均可以尝试一下github
Shell不能作什么bash
须要精密的运算的时候
须要语言效率很高的时候
须要一些网络操做的时候
总之Shell就是能够快速开发一个脚本简化开发流程,并不能够用来替代高级语言网络
Shell的工做原理ide
Shell能够被称做是脚本语言,由于它自己是不须要编译的,而是经过解释器解释以后再编译执行,和传统语言相比多了解释的过程因此效率会略差于传统的直接编译的语言。工具
最简单的脚本:code
#!/bin/bash
echo "Hello World"blog
只须要打开文本编辑工具,编辑成以上的样子,而后保存成test.sh教程
运行该脚本:开发
这样咱们便写出来了第一个最简单的脚本,下面咱们能够尝试着写一些复杂的脚本。
Shell中的变量
myText="hello world"
muNum=100
这里面须要注意的就是,“=”先后不能有空格,命名规则就和其它语言同样了。
访问变量
myText="hello world"
muNum=100
echo $myText
echo muNum
当想要访问变量的时候,须要使用$,不然输出的将是纯文本内容,以下图所示。
Shell中的四则运算
运算符 含义
例子程序
例子程序
#!/bin/bash
echo "Hello World !"
a=3
b=5
val=expr $a + $b
echo "Total value : $val"
val=expr $a - $b
echo "Total value : $val"
val=expr $a * $b
echo "Total value : $val"
val=expr $a / $b
echo "Total value : $val"
这里面须要注意的就是,定义变量的时候“=”先后是不能有空格的,可是进行四则运算的时候运算符号先后必定要有空格,乘法的时候须要进行转义。
其它运算符 =、==、!=、!、-o、-a
运算符 含义
% 求余
== 相等
= 赋值
!= 不相等
! 与
-o 或
-a 非
例子程序
a=3
b=5
val=expr $a / $b
echo "Total value : $val"
val=expr $a % $b
echo "Total value : $val"
if [ $a == $b ]
then
echo "a is equal to b"
fi
if [ $a != $b ]
then
echo "a is not equal to b"
fi
做者:关玮琳linSir
连接:https://www.jianshu.com/p/71cb62f08768