shell 指令碼語法大全

2021-09-29 04:55:07 字數 1819 閱讀 5470

1、shell 指令碼第一行#!後面的!來告訴shell用哪個shell來執行指令碼,可以使用base shell

2、環境變數:$符號

3、使用者變數: 區分大小寫  

group=mysql

user=mysql

1、cat << eof > /etc/my.cnf

eof 結束符可將指定內容輸入到指定的檔案中

cat << eof > /etc/my.cnf

[mysqld]

port=3306

!includedir /etc/my.cnf.d

eof

2、命令替代

可以將命令輸出賦值給變數

反引號(``)和$()

password=`cat $basedir/initinfo | grep password | awk -f " " `

3、if else-if else

if else-if else

if else-if else 語法格式:

if condition1

then

command1

elif condition2

then

command2

else

commandn

fi

4、檔案比較

1、檢測目標   -d檢測目錄是否存在

2、檢測物件 -e比較檔案和目錄是否存在

3、檢測檔案 -e比較可用於檔案目錄。確定指定物件為檔案,必須用 -f 比較

#!/bin/bash

item_name=$home

if [-e $item_name]

then

.....

if[-e $item_name]

then...

5、使用雙括號

(()) 

()裡面的特殊字元可以不用轉義

: 提供了模式匹配

if[[$sure == r*]] 是否已r 開頭

s: / 第二個字串代替第乙個字串

e: sed命令上執行多個命令,命令之間用 分號 隔開

替換選項

g: 新文字將會替換所有匹配的舊文字

p: 原先行的內容要列印出來

w file:將替換結果寫在檔案中

替換字元

/ 轉義

d: 刪除行

sed 'number 1/d' data6.txt // sed 編輯器不會刪除原始檔案,只是在sed 編輯器中消失

插入和附加文字

i: 會在指定的行前新增一行

a: 會在指定的行後新增一行

echo "test line 1" | sed 'i\test line 1'

修改行

Shell指令碼語法

定義單變數 p name kang 使用單變數 echo p name js 輸出kang.js echo p name.js 輸出kang.js cp p name.js copy.js 命令1 命令2 如果左邊的 命令1 執行成功,那麼右邊的 命令2 才會被執行。命令1 命令2 與 相反。如果 ...

shell指令碼 語法

條件測試 test 命令test 可以測試乙個條件是否成立,如果測試條件為真,則該命令的exitstatus為0,反之,exitstatus為1。注意 命令 各引數之間應該用空格隔開,以 結尾。但是 不是命令。測試命令 d dir 如果dir存在並且是乙個目錄則為真 f file 如果file存在並...

shell指令碼語法

測試乙個條件是否成立,python ubuntu 1004 var 2 python ubuntu 1004 test var python ubuntu 1004 echo 0python ubuntu 1004 test var gt 5 python ubuntu 1004 echo 1或者 ...