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 形式儲存所有輸入的命令列引數 以 ...