shell學習筆記(二)

2021-10-09 22:13:20 字數 2858 閱讀 8634

字串表示:

字串可以由單引號』 '包圍,也可以由雙引號" "包圍,也可以不用引號。

str1=c.biancheng.net

str2="shell script"

str3='c語言中文網'

單引號和雙引號前面已經解釋過了。不用引號的話字串之間不能有空格。

字串拼接:

直接將兩個字串放在一起就好了,簡單粗暴。

#!/bin/bash

name="shell"

url=""

str1=$name$url #中間不能有空格

字串擷取:格式

說明$從 string 字串的左邊第 start 個字元開始,向右擷取 length 個字元。

$從 string 字串的左邊第 start 個字元開始擷取,直到最後。

$從 string 字串的右邊第 start 個字元開始,向右擷取 length 個字元。

$從 string 字串的右邊第 start 個字元開始,直到最後。

$從 string 字串第一次出現 *chars 的位置開始,擷取 *chars 右邊的所有字元。

$從 string 字串最後一次出現 *chars 的位置開始,擷取 *chars 右邊的所有字元。

$從 string 字串第一次出現 *chars 的位置開始,擷取 *chars 左邊的所有字元。

$從 string 字串最後一次出現 *chars 的位置開始,擷取 *chars 左邊的所有字元。

1、if 語句

if  condition

then

statement(s)

fi

2、if else語句

if  condition

then

statement1

else

statement2

fi

3、if elif else 語句

if  condition1

then

statement1

elif condition2

then

statement2

elif condition3

then

statement3

……else

statementn

fi

test命令:

test 是 shell 內建命令,用來檢測某個條件是否成立。test 通常和 if 語句一起使用,並且大部分 if 語句都依賴 test。

test expression = [ expression ]

注意和expression之間的空格,這兩個空格是必須的,否則會導致語法錯誤。

例子:

#!/bin/bash

read age

if test $age -le 2; then

echo "嬰兒"

elif test $age -ge 3 && test $age -le 8; then

echo "幼兒"

elif [ $age -ge 9 ] && [ $age -le 17 ]; then

echo "少年「

elif [ $age -ge 18 ] && [ $age -le 25 ]; then

echo "成年"

elif test $age -ge 26 && test $age -le 40; then

echo "青年"

elif test $age -ge 41 && [ $age -le 60 ]; then

echo "中年"

else

echo "老年"

fi

4、case語句

case expression in

pattern1)

statement1

;;pattern2)

statement2

;;pattern3)

statement3

;;……

*)statementn

esac

1、while迴圈

while condition

do statements

done

2、for迴圈

for((exp1; exp2; exp3))

do statements

done

3、select in迴圈

select variable in value_list

do statements

done

命令

說明awk

用於文字處理的解釋性程式語言,通常被作為資料提取和報告的工具。

cut用於將每個輸入檔案(如果沒有指定檔案則為標準輸入)的每行的指定部分輸出到標準輸出

grep

用於搜尋乙個或多個檔案中匹配指定模式的行。

tar用於歸檔檔案的應用程式。

head

用於讀取檔案的開頭部分(預設是 10 行)。如果沒有指定檔案,則從標準輸入讀取。

sort

用於對文字檔案的行進行排序。

tail

用於顯示檔案的結尾部分。

wc用於列印檔案中的總行數、單詞數或位元組數。

shell學習筆記(二)

alias 別名 別名的設定格式alias variable 命令 取消別名使用unalias variable。source 通過source bashrc或.bashrc將環境變數配置檔案寫入到shell環境中。萬用字元符號作用 代表0至無限個任意字元 代表至少有乙個任意字元 代表至少有乙個 裡...

學習shell程式設計筆記 二

變數 含義 0 當前指令碼的檔名 n傳遞給指令碼或函式的引數。n 是乙個數字,表示第幾個引數。例如,第乙個引數是 1,第二個引數是 2。傳遞給指令碼或函式的引數個數。傳遞給指令碼或函式的所有引數。傳遞給指令碼或函式的所有引數。被雙引號 包含時,與 稍有不同,下面將會講到。上個命令的退出狀態,或函式的...

shell學習筆記之條件(二)

test或者 檢查檔案是否存在 if test f read.c then fi if f read.c then fi 如果then和if在同一行上,就應該用 把if和then分開 if f read.c then fi 注意 1.if空格 空格 空格 都有空格 2.test命令的退出碼 表明條件...