shell函式有兩種語法:
function
name
commands
return}
這兩種格式等價,可以交替使用。
例1:應用函式
#!/bin/bash
#shell function demo
function funct
#main program starts here
echo
"step 1"
funct
echo
"step 3"
將輸出
step
1step
2step
3
下面給我們的最小的網頁新增一些shell函式
#!bin/bash
#program to output a system information page
title=system information report for $hostname
current_time=$(data +"%x")
time_stamp="generate $current_time,by $user"
report_uptime
()report_disk_space
()report_home_space
()cat << eof
$time_stamp
$(report_uptime)
$(report_disk_space)
$(report_home_space)
eof
定義在函式外部(即不屬於任何乙個函式的變數)為全域性變數
定義在某個函式內部,且由local標記的變數為區域性變數。
例2:
#!bin/bash
#local and global vars
foo=0
#global variable foo
funct
() echo
"global: foo=$foo"
funct
可以看到
global: foo=0funct_1: foo=1
Shell指令碼程式設計 變數
1 變數定義的方法 name value name中的規則同c語言,value可以是任何值,如果包含空格,則應該使用 引起來。2 訪問變數 varname 3 定義陣列變數 name index value 這裡的index可以為n,不用從0開始賦值,如我只定義 name 3 value,則name...
Shell指令碼程式設計(三)
shell變數 3 預定義變數 shell程式設計內事先定義了一些變數,使用者只能使用這些變數而不能重新定義它們。所有的預定義變數都由 符號和另乙個符號構成,常用的預定義變數如下 命令列引數的個數 所有命令列引數 不計 0,同 前乙個命令的退出狀態 所有命令列引數 不計 0,同 正在執行的程序id號...
shell程式設計三 變數
在shell,變數沒有型別,也不需要在使用之前先宣告,直接賦值就可以了。在shell中,變數的值都是字串,不管你在賦值時使用採用了引號。變數可以使用 號來賦值,用法如下 var valuevar是變數名,value是變數的值,如果value中包含了空白字元 例如空格 那麼value必須使用引號 單引...