腳本的進階與一些基本腳本

1,腳本中用于表示數字大小寫和符號為:

-gt(大于)-lt(小于)-ne(不等于)-eq(等于)

格式為 [[空格 ”符號”空格]]

2,測試文件類型的選項

-f(是否為普通文件)-l(是否為鏈接文件)-d(是否為目錄)-e(單獨測試文件是否存在)

3,if語句的格式:(其中path代表條件,elif鏈接多個條件,最后一個條件用else表示)

if path1;then
        elif path2;then
        elif path3;then
        else path4;then
fi

4,while循環語句的格式

while +(條件);do
  (需要執行的操作)
done

其中條件如果一直為真,則這個循環為死循環。

                                                  基本的腳本

1.

寫一個腳本

1、創建用戶tuser1-tuser9;

2、創建目錄/tmp/dir-當前日期;

3、在/tmp/dir-當前日期 目錄中創建9個空文件file101-file109

4、將file101的屬主改為tuser1,依次類推,一直將file109的屬主改為tuser9;

#!/bin/bash
#
basedir=/tmp/dir- date + %Y%m%d
mkdir -p $basedir
for i in {1..9};do
filename=$basedie/file10$i
        touch $filename
        useradd tuser$i
        chown tuser$i $filename
done
~                           

2.

給定4個整數,判斷其中的最大值和最小數。并顯示出來

#!/bin/bash
#
if [ $# -ne 4 ];then
        echo "error"
        exit
fi
max=$1
min=$1
shift
for i in {2..4} ;do
    if [[ "$1" =~ ^[0-9]+$ ]] ;then
        if [ $max -lt $1 ] ;then
            max=$1
        fi
        if [ $min -gt $1 ] ;then
            min=$1
        fi
    else
        echo "$1 Not a number."
        exit 100
    fi
    shift 
done

echo "Max: $max"
echo "Min: $min"

3.打印99乘法表

#!/bin/bash
#
for ((i=1;i<=9;i++));do
        for((j=1;j<=i;j++));do
                echo -e "$j*$i=$(($i*$j))\t\c"
        done;
        echo
        done;

原創文章,作者:yuanchengren,如若轉載,請注明出處:http://www.www58058.com/76710

(0)
yuanchengrenyuanchengren
上一篇 2017-05-22
下一篇 2017-05-22

相關推薦

  • RAID介紹及軟RAID實現

    RAID RAID:Redundant Arrays of Inexpensive(Independent)Disks1988年由加利福尼亞大學伯克利分校(University of California-Berkeley)“A Case for Redundant Arrays of Inexpensive Disks”。多個磁盤合成一個“陣列”來提供更好…

    Linux干貨 2016-09-02
  • 你會用Python寫洗腦神曲嗎?

    Python實戰班-學員學習成果展示 同樣是周末,有些人是閑聊著度過,有些人是學習充電度過。 人與人最大的區別,是下班后的時間??茨阍趺慈ダ谩?周末時,馬哥Python實戰班的學員正在認真上課,他們中的不少人,月薪在10k以上,甚至月薪20k以上。 但他們沒有虛度周末時光。 #最浪費時間的就是:思而不學+猶豫不決。# 馬哥Python實戰班二期的小伙伴們才…

    Linux干貨 2016-07-05
  • 第七周作業,分區格式化及一些腳本練習

    1、創建一個10G分區,并格式為ext4文件系統;    (1) 要求其block大小為2048, 預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl;       fidsk劃分10G分區,partx命令強制內核重新讀磁盤分區表,cat /proc/partitions是否內核識別到新分區 …

    Linux干貨 2017-02-01
  • linux系統啟動流程詳解

    一、 為什么要研究linux系統啟動:     或許有人會說,等它開機就好了,為什么還要研究它開機流程呢,其實如果服務器運行很好又沒有人為的誤操作等,或許不用研究,但是為了能在系統出問題后第一時間的修復它,又或者你忘記了root密碼等情況時就非常有必要研究一下linux的開機流程了,因為只有知道了它是如何運作的,才能讓…

    Linux干貨 2016-09-13
  • cp、chmod、chown、grep及正則表達式練習

    復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。   編輯/etc/group文件,添加組hadoop。使用vim指令編輯/etc/group文件,進入末行模式(輸入冒號),然后輸入$回車,將光標跳至末行,然后按下o(小寫)在最后一行下面輸入新的組:hadoop:x:…

    Linux干貨 2016-11-21
  • 理解基本權限以及特殊權限:Suid 、Sgid、Sticky以及acl

    理解基本權限以及特殊權限:Suid 、Sgid、Sticky以及acl 在Linux中特殊權限是什么?為什么要設定特殊權限?回答這個問題前,我們不妨思考為什么要設定權限? 大家知道Linux中一切皆文件。不論你是什么,在linux系統中都會被當做一個文件來看待。無論你是文本或目錄,硬件或軟件,圖片或視頻等等,統統都被當做文件來看待。所以,在linux中,文件…

    Linux干貨 2017-04-08
欧美性久久久久