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