shell學習之旅

2022-07-01 05:51:09 字數 1534 閱讀 3248

#################shell學習##########################3

1.變數使用${}養成習慣,便於指令碼更加清晰定義變數

dir=/opt/desk

echo "$"

2 字串的擷取

string一般用這個單詞表示字串

name=chaojichang

echo "$"

3陣列的表示和運用

volues=(jim tom kim jenkins wilum)

echo "$"

@表示所有 或者 * 也是表示所有

4中括號的使用

目錄的匹配 [ -d "$dir" ]    檔案的匹配   [ -e "$file" ]

陣列的匹配使用雙中括號[[ $var1 = $var2 ]]

#!/bin/bash

# author

# url:www.runoob.com

printf "%-10s %-8s %-4s\n" 姓名 性別 體重kg  

printf "%-10s %-8s %-4.2f\n" 郭靖 男 66.1234

printf "%-10s %-8s %-4.2f\n" 楊過 男 48.6543

printf "%-10s %-8s %-4.2f\n" 郭芙 女 47.9876

執行指令碼,輸出結果如下所示:

姓名性別體重kg

郭靖男66.12楊過男48.65郭芙女47.99

%s %c %d %f 都是格式替代符,%s輸出乙個字串,%d整型輸出,%c輸出乙個字元,%f輸出實數,以小數形式輸出。

%-10s 指乙個寬度為 10 個字元(-表示左對齊,沒有則表示右對齊),任何字元都會被顯示在 10 個字元寬的字元內,如果不足則自動以空格填充,超過也會將內容全部顯示出來。

%-4.2f 指格式化為小數,其中.2指保留2位小數。

case值in模式1)command1

command2

...commandn

;;模式2)command1

command2

...commandn

;;esac

break命令允許跳出所有迴圈(終止執行後面的所有迴圈)。

下面的例子中,指令碼進入死迴圈直至使用者輸入數字大於5。要跳出這個迴圈,返回到shell提示符下,需要使用break命令。

#!/bin/bash

while :

doecho -n "輸入 1 到 5 之間的數字:"

read anum

case $anum in

1|2|3|4|5) echo "你輸入的數字為 $anum!"

;;*) echo "你輸入的數字不是 1 到 5 之間的! 遊戲結束"

break

;;esac

done

Java學習之旅

整型,字元型,浮點型的資料在混合運算中相互轉換,轉換時應遵循以下原則 1 容量小的型別自動轉換成容量大的資料型別 資料型別按照容量大小排序。2 byte,short,char int long float double。3 byte,short,char之間不會相互轉換,他們三者在計算時首先會轉換為...

Obliv c學習之旅

obliv c學習之旅 step 1 一開始什麼都不知道,按部就班摸索安裝。模擬編譯原理實驗,大概知道了這個編譯器是個怎麼回事。解決了一開始因vs對編譯器留下的刻板印象。原來還有這麼簡陋的命令列程式設計 step2 進入test看 發現看不懂。於是找了個檔案看。建議用谷歌 api介紹 第一方呼叫該函...

PMP學習之旅

昨天結束了pmp考試,乙個階段的 專案 完成了,雖然還不知道自己能不能通過,但我覺得有必要乘著熱度把這3個月左右時間的學習總結一下。起初開始準備學pmp的時候,我對這個學習並不是太 感冒 的,我想寧可把時間和成本花在技術深造上。做技術的人總是很固執的,固執的認為 技術為王 固執的認為技術才是推動社會...