Linux之Shell程式設計

2021-10-20 15:21:03 字數 3512 閱讀 8485

#定義變數

a=100

echo

"a=$a"

#撤銷變數

unset a

echo

"a=$a"

#定義靜態變數

readonly b=100

echo

"b=$b"

將命令的返回值賦值給變數

echo

"$0$1

$2"echo

"$*"

echo

"$@"

echo

"$#"

./***.sh 100 200
echo

"當前的程序號=$$"

# 後台方式執行 ***.sh

./***.sh &

echo

"最後的程序號=$!"

echo

"執行的值=$?"

result1=

$(((2+

3)*4

))echo

"reslut1=$result1"

result2=$[

(2+3)*4]

echo

"reslut2=$result2"

按照檔案許可權進行判斷

按照檔案型別進行判斷

#判斷字串是否相等if[

"ok"

="ok"

]then

echo

"equal"

fi#比較數字大小

if[ 12 -gt 22 ]

then

echo

"大於等於"

fi#判斷檔案是否存在

if[ -e /root/***.txt ]

then

echo

"存在"

fi

if

[$1 -ge 60 ]

then

echo

"及格了"

elif

[$1 -lt 60 ]

then

echo

"不及格"

fi

case

$1in

"1")

echo

"周一";;

"2")

echo

"周二";;

*)echo

"other";;

esac

for 變數 in 值1 值2 值3

do 程式

done

#將$*中的值進行遍歷,交給i

for i in

"$*"

doecho

"the num is $i"

done

#將$@中的值進行遍歷,交給i

for i in

"$@"

doecho

"the num is $i"

done

for

((初始值;迴圈控制條件;變數變化))

do 程式

done

sum=0

for((i=

1;i<

100;i++

))do

sum=$[

$sum+$i

]done

echo

"sum=$sum"

sum=0

i=0while

[$i -le $1]do

sum=

[$sum+$i

] i=$[

$i+1]

done

echo

"sum=$sum"

#讀取控制台輸入乙個num值

read -p "請輸入乙個數num1=" num1

echo

"你輸入的值num1=$num1"

#5秒內輸入乙個值

read -t 5 -p "請輸入乙個數num2=" num2

echo

"你輸入的值num1=$num2"

basename /home/***.txt

basename /home/***.txt .txt

dirname /home/***.txt
function funname(

)

function getsum(

)read -p "請輸入第乙個數n1" n1

read -p "請輸入第二個數n2" n2

getsum $n1

$n2

#!/bin/bash

#完成資料庫定時備份

#備份的路徑

backup=/date/backup/db

#當前的時間作為檔名

datetime=

$(date +%y_%m_%d_%h%m%s)

echo

"*****=開始備份*****="

echo

"*****=備份的路徑是 $backup/$datetime.tar.gz*****="

#主機host=localhost

#使用者名稱

db_user=root

#密碼db_pwd=root

#備份資料庫名

database=test_shell

#建立備份的路徑

#如果備份的路徑資料夾存在,就是用,否則就建立

[! -d "$backup/$datetime"]&&

mkdir -p "$backup/$datetime"

#執行mysql的備份資料庫的指令

mysqldump -u$ -p$ --host=$$

|gzip

>

$backup/$datetime/satetime.sql.gz

#打包備份檔案

cd$backup

tar -zcvf $datetime.tar.gz $datetime

#刪除臨時檔案

rm -rf $backup/$datetime

#刪除10天前的檔案

find

$backup -mtime +10 -name "*.tar.gz" -exec rm -rf \;

echo

"*****=備份檔案成功*****="

10 2 * * * /usr/sbin/mysql_db_backup.sh

linux之shell程式設計

shell你只需要了解這麼多 補充 1.第七部分特殊字元的使用 特殊字元用在shell指令碼中即可 2.第八部分中轉義字元的理解 shell命令列中特殊字元與其轉義詳解 去除特殊含義 這部分主要給大家詳細介紹了shell命令列中特殊字元與其轉義 去除特殊含義 的相關資料,文中介紹的很詳細,相信對大家...

Linux之Shell程式設計

shell是乙個命令直譯器,他為使用者提供了乙個向linux核心傳送請求以便執行程式的介面系統級程式,使用者可以用shell來啟動 掛起 停止甚至是編寫一些程式 指令碼格式要求 1 指令碼以 bin bash開頭 2 指令碼需要有可執行許可權 指令碼常用的執行方式 方式1 輸入指令碼的絕對路徑或相對...

Linux之shell程式設計基礎

變數在shell中分為 本地變數 環境變數 位置引數 本地變數 僅可在使用者當前shell生命期的指令碼中使用的變數,本地變數隨著shell程序的消亡而無效,本地變數在新啟動的shell中依舊無效,類似於c c 中的區域性變數的概念 環境變數 適用於所有登入程序所產生的子程序 位置引數 用於向she...