shell命令學習4

2021-09-02 11:37:48 字數 2055 閱讀 2313

shell命令

1、歸檔,壓縮

歸檔:將多個檔案打包在一起 tar (歸檔,解檔)

歸檔: tar -cvf ***.tar 檔案列表

解檔: tar -xvf ***.tar

1、gzip是gnu組織開發郵的乙個壓縮的程式

字尾:.gz

壓縮:tar -czf ***.tar.gz 檔案列表

解壓:tar -xzf ***.tar.gz

bzip2也是壓縮命令,壓縮能力更強

壓縮:tar -cjf ***.tar.bz2

解壓:tar -xjf ***.tar.bz2

2、zip: linux提供了zip和unzip程式來壓縮和解壓程式,

壓縮:zip

zip ***.zip 檔案列表

解壓:unzip

unzip ***.zip

shell指令碼:為了完成某乙個任務,將相關的shell命令存放在檔案中,並自動執行。

1、指令碼的直譯器: /bin/bash

2、 shell原始檔的字尾名:.sh

3、編寫第乙個指令碼:

# !/bin/bash

command1

…4、輸入輸出:

輸出: echo 「資訊」 #輸出行

printf 「格式」 輸出內容

輸入:read 變數名

read -p 「提示」 變數名

5、執行程式: 路徑/檔名

6、執行的順序是:從上往下

7、程式=演算法+資料

shell是一門弱語言:shell是沒資料型別,只有乙個字串型別

定義變數:

變數名=值

引用變數:引用變數的內容

獲取變數內容

$獲取變數長度

$獲取字串

katex parse error: double superscript at position 56: …o 'hello' '̲var hello』 都是字串

「$var hello」 引用變數的內容

8轉義字元:對現有的字元拓展出其它意思

n \n

t \t

9、數值測試:注意,由於shell的數值均為字串,需要借助test命令來判斷大小

test 比較檔案型別或者數值字串的大小

test 數值1 -eq 數值2 是否相等 (真或假)

test 數值1 -ge 數值2 數值1是否大於或等於數值2

test 數值1 -gt 數值2 數值1是否大於數值2

test 數值1 -le 數值2 <=

test 數值1 -lt 數值2 <

test 數值1 -ne 數值2 !=

10、流程控制:選擇控制 迴圈控制

選擇控制:當某條件成立時,才執行。否則不執行

if condition

then

command...

else

command...

fi 多分支:

if condition1

then

command1

elif condition2

command2

then

elif condition3

command3

...else

command...

fi 巢狀if

if condition

then

if command1

then

command1

fi command...

fi

while迴圈

while [ condition ]

docommand1

command2

command3

done

until 迴圈

until command

dostatement(s) to be executed until command is true

done

Shell學習筆記(4)

宣告 1.定義陣列 陣列中可以存放多個值。bash shell 只支援一維陣列 不支援多維陣列 初始化時不需要定義陣列大小 與 php 類似 與大部分程式語言類似,陣列元素的下標由0開始。shell 陣列用括號來表示,元素用 空格 符號分割開,語法格式如下 array name value1 val...

Shell命令學習

i 1001 for x in xml do mv x xml i done 注意i左右不可以有空格for x in do mv x x 1 done 在名字末尾加上數字1 2.將檔案名字提取並儲存 ls xml test.txt3.批量刪除檔案字尾名 rename s jpg 更多rename操作...

shell命令學習(一)

shell命令學習之for for 變數 in 值 do宣告 done 例子 for a in a b x do echo a done 輸出 abx while do 命令學習 bin sh echo 請輸入密碼 read trythis while trythis s do echo sorry...