shell指令碼的一些基礎操作

2021-10-03 16:01:14 字數 2336 閱讀 6617

vim test.sh      ---------建立乙個 .sh指令碼

// 直譯器        編輯這個指令碼 

#!/bin/bash   是使用bash 直譯器的意思      #!/bin/sh  是使用sh直譯器的意思

a=10

echo $a

---------------------

/bin/bash test.sh     // 執行

./test.sh      // 執行

sh test.sh     // 執行

echo $?   ------測試上乙個命令是否成功   0 是成功

df -h ---------可以檢視伺服器磁碟資訊

seq  1 20 ----類似for迴圈1到20 

********** 指令碼的遍歷

for i in `seq 1 20`

doecho "列印遍歷的數字:$i"

done

*************************************   累加

expr 100 + 1   -------數字之間要有空格  加法

a=0for((f=0;f<=100;f++))

doa=`expr $f + $a`

done

--------打壓縮包 

#當前目錄下面所有的txt檔案打包成乙個壓縮包

for i in `find ./ -name "*.txt"`

dotar -czf txtall.tgz $i

done

-----------

# 用while迴圈演示下

i=0while((i<100))

do i=`expr $i + 1`

echo "遍歷的值是:$i"

done

#讀 我在控制台輸入的內容 迴圈一直等待輸入

while read linevaraa

doecho ------$linevaraa

done

**********=指令碼的遍歷

*****************************************if  操作 

num1=100

num2=200

if(($num1>$num2));then   #代表觸發的點

echo "ok................."

else

echo "not"

fi         #代表結束

---------------------建立目錄用指令碼------------

-d  -------目錄的意思 

-p -------遞迴的意思

#判斷目錄是否存在 如果不存在 就建立目錄

if [ ! -d `pwd`/feidir ]; then

mkdir -p `pwd`/feidir

else

echo "feidir目錄存在了。。。"

fi*****************************算數操作

re=`expr 100 + 1000`

echo $re

---------字串比較

var="abcd"

var2="aaaaaa"

#判斷字串是否相等

if [ $var = $var2  ]; then

echo "兩ge字串相等"

else 

echo "不想同"

fi------

#字串是否是空

if [ $var ]

then

echo "字串不是空值是:$var"

else

echo "字串的值是null"

fi*******************************函式******************************

function test01()

#呼叫上面的函式

test01

------------------------------------

function test02() {

var="fei"

var2="xiang"

echo $var

echo $var2

echo "test02方法執行了..."

test02

------------------------------

#如何給方法傳引數

function test03() {

echo "test03 方法引數:`expr $1`"

echo $1

test03     55555

shell指令碼的一些基礎知識

echo命令 列印文字 語法 echo ne 字串 引數 n 不要在最後自動換行 e開啟反斜槓esc轉義。若字串中出現以下字元,則特別加以處理,而不會將它當成一般文字輸出 a 發出警告聲 b 刪除前乙個字元 c 最後不加上換行符號 f 換行但游標仍舊停留在原來的位置 n 換行且游標移至行首 r 游標...

shell指令碼的一些程式設計

shell的一般結構主要是函式和主過程。shell指令碼的形式是函式放在最前面,後面是命令語句。讀取的時候是從上往下,跳過函式先執行命令語句,需要用到函式時,直接呼叫。變數分為區域性變數,環境變數 內部變數。區域性是在這個shell裡面變數,在另外乙個shell裡面不可用。環境是所有得終端都可用的。...

書寫一些簡單的shell指令碼

1 檢查定時任務是否開啟 root shell 2.5 cat sb01.sh bin bash etc init.d functions service ps ef grep crond wc l if service gt 1 then echo action crond is running ...