歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

Linux shell編程基礎 三、shell的基本結構

shell結構大體是由設定變量、內置命令、shell的語法結構、函數組成。

使用實例說明:test.sh

#!/bin/bash  
#說明使用/bin/bash作為這個腳本的解釋器  
#定義一個函數  
function my_fun () {  
echo "Hello, $1,today is $2"
}  
#定義連個變量  
name=$1  
today=`date`  
#函數調用  
my_fun "$name" "$today"

上面的這個腳本要想運行還需要做一些操作 ,首先給予執行權限

chmod +x test.sh

然後執行

./test.sh john

輸出

Hello, john,today is Tue Jun  1 14:51:46 CST 2010

父shell和子shell

在執行script之 前,身處的環境就是父shell。執行script之時,父shell根據#!/bin/bash, fork出來一個新的shell環境,然後在子shell中執行,執行完畢後子shell結束 ,任然回到父shell中,這樣不會影響到父shell的環境。

login shell 和non-login shell

這張圖片是login shell的流程,當是non-login shell時,只執行方框中的 標注的部分。由這張圖我們可以知道,在如下幾種情況下,執行的流程。

登陸(login)

/etc/profile

~/.bash_profile

注銷 (logout)

~/.bash_logout

執行新shell,分成兩種情況

1. 執行交互式的shell

~/.bashrc

/etc/bashrc

2.執行非交互 式的shell,比如執行script

會檢查 BASH_ENV 變量的內容,如果有定義 ,則執行

Copyright © Linux教程網 All Rights Reserved