shell程式設計

2021-09-24 06:12:44 字數 1442 閱讀 7042

bash的變數型別:

​ 環境變數 :export

​ 本地變數:shell指令碼在執行時啟動乙個子bash來解釋的。

區域性變數

​ 位置變數

​ 特殊變數:bash內建的用來儲存某些特殊資料的變數。(也叫系統變數)

本地變數:只屬於某乙個shellscript的變數。

​ var_name=值

​ 作用域:整個bash程序

區域性變數:

​ local var_name =值,

​ 作用域:當前**段。

環境變數:

​ export 名字=值

​ 作用域:當前的shell和其子shell。

注意:指令碼在執行時都會啟動乙個子shell程序:

​ 命令列中啟動的指令碼會繼承當前shell環境變數。

​ 系統自動啟動指令碼(非命令列啟動):則需要自我定義環境變數。

位置變數: 用於 指令碼執行的引數,$1 表示第乙個引數,以此類推

​ $0,$1,$2….

​ $0:表示指令碼本身的檔名

特殊變數:

​ $? :上乙個命令的執行狀態返回值。

​ $# 傳遞到指令碼的引數個數

$* 傳遞到指令碼的引數,與位置變數不同,此選項引數可超過9個

腳 本運

行時當前

程序的i

d號,常

用作臨時

變數的後

綴,如h

aiso

n.

指令碼執行時當前程序的id號,常用作臨時變數的字尾,如 haison.

指令碼執行時當

前程序的

id號,

常用作臨

時變數的

字尾,如

hais

on.$! 後台執行的(&)最後乙個程序的id號

@

與@ 與

@與#相同,使用時加引號,並在引號中返回引數個數

$- 上乙個命令的最後乙個引數

$? 最後命令的退出狀態,0表示沒有錯誤,其他任何值表明有錯誤

程式有兩類返回值:

1、 執行結果 :標準,錯誤 :標準輸出,錯誤輸出

2、 執行狀態,$? : 0:表示正確,1-255:錯誤

輸出重定向:

>覆蓋重定向

>> 追加重定向

2> 錯誤覆蓋重定向

2>>錯誤追加重定向

&> 全部重定向

&>> 全部資訊追加重定向

撤銷變數:

​ unset 變數名

檢視shell中變數:

set 命令

檢視shell中的環境變數

printenv

envexport

引用變數:$,一般可以省略{}

單引號:強引用,不作變數替換

雙引號:弱引用,做變數替換

反引號:``命令替換

Shell程式設計 shell特性

linux會預設記錄1000條歷史記錄,可通過 echo histsize 檢視,如果講histsize更改為2000,那麼會預設儲存2000條。1000條記錄儲存在家目錄的 bash history 中,僅當使用者正常退出當前shell時,當前shell中執行的命令才會儲存到 bash histo...

Shell程式設計 Shell函式

shell函式 1.將命令序列按格寫在一起 2.可方便重複使用命令序列 3.shell函式定義 function 函式名 4.呼叫函式的方法 函式名 引數1 引數2 5.shell函式應用示例 1 兩個數字求和 要求 通過sum 定義函式 兩個數求和 方法一 root localhost vim d...

Shell程式設計

1 建立指令碼 vi emacs等即可 bin sh 2 shell變數 對shell來講,所有的變數的取值都是乙個字串 shell是一種解釋性語言,變數無需事先定義 shell中的系統變數 程式命令列引數的數目 儲存前乙個命令的返回值 0 當前程式名 以 1 2 形式儲存所有輸入的命令列引數 以 ...