3.2 Shell編程基礎之算術運算與邏輯運算

1 算術運算

1.1 運算符

+, -, *, /, %取模(取餘), **(乘方)

1.2 算術運算的語法格式

  1. let var=算術表達式
  2. var=$[算術表達式]
  3. var=$((算術表達式))
  4. declare –i var = 數值
  5. echo ‘算術表達式’ | bc

2 邏輯運算

  • 與:

1 與 1 = 1
1 與 0 = 0
0 與 1 = 0
0 與 0 = 0

  • 或:

1 或 1 = 1
1 或 0 = 1
0 或 1 = 1
0 或 0 = 0

  • 非:

! 1 = 0         ! true
! 0 = 1         ! false

 

短路運算

  • 短路與

第一個爲0,結果必定爲0
第一個爲1,第二個必須要參與運算

  • 短路或

第一個爲1,結果必定爲1
第一個爲0,第二個必須要參與運算

  • 異或:^

異或的兩個值,相同爲假,不同爲真

3 練習

3.1 編寫腳本/root/bin/backup.sh,可實現每日將/etc/目錄備份到 /root/etcYYYY-mm-dd

#!/bin/bash
#
#*******************************************************************
#Author:                      Skye
#Date:                        2019年 09月 04日 星期三 13:44:49 CST
#FileName:                    backup.sh
#Description:                 backup
#Copyright (C)                2019 All rights reserved
#*******************************************************************

echo Backup begins...
sleep 1
cp -av /etc/ /root/etc`date +%F`
echo Backup is already finished.

 

3.2 編寫腳本/root/bin/nologin.shlogin.sh,實現禁止和允許普通用戶登錄系統

/root/bin/nologin.sh

#!/bin/bash
#
#*******************************************************************
#Author:                      Skye
#Copyright (C)                2019 All rights reserved
#*******************************************************************
touch /etc/nologin

/root/bin/login.sh

#!/bin/bash
#
#*******************************************************************
#Author:                      Skye
#Copyright (C)                2019 All rights reserved
#*******************************************************************
rm -rf /etc/nologin

 

3.3 編寫腳本/root/bin/disk.sh,顯示當前硬盤分區中空間利用率最大的值

#!/bin/bash
#
#*******************************************************************
#Author:                      Skye
#Copyright (C)                2019 All rights reserved
#*******************************************************************
df | tr -s ' ' % | cut -d% -f5 | grep [[:digit:]] | sort -n | tail -n 1

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章