Skip to content

Latest commit

 

History

History
32 lines (30 loc) · 577 Bytes

函数.md

File metadata and controls

32 lines (30 loc) · 577 Bytes

函数

基本格式

function who() {
   echo -n 'I'm '
   whoami
}

提取文本 kv.txt中的参数

echo kv.txt
name=jelly&age=20&location=shenzhen
function getParam() {
    local key=$1
    awk -F'&' '{for(i=1;i<=NF;i++){print $i;}}' ./kv.txt|awk -F'=' -v key=$key '{if ($1==key){print $2}}'
}

调用函数

who
getParam 'name'
getParam name

调用函数的时候,不像其他语言那样使用括号。其参数为 $1,$2,$3,$4,

local

函数内的变量用local 不然这个变量会超越函数,在整个脚本周期内有用