Shell 字串擷取方法

2021-06-16 04:45:56 字數 872 閱讀 8868

shell下擷取字串的功能非常少,不過有時在判斷字串字首或是字尾時卻非常重要。

這裡說的shell不包含bash和csh,主要是給freebsd下sh指令碼使用的。

例如下面的乙個列子:

prg_info_name

="make"

mke_info_act

="/bin/make"

foo ()

foo "

prg_info_name"

foo "

mke_info_act"

為了實現上面的功能,我們需要字串擷取來判斷字串是包含的"name"還是"act"來實現我們需要的功能。在shell中包含了對變數的操作:

$ 從左往右擷取最後一次匹配上string右邊的字串

$  從左往右擷取第一次匹配上string右邊的字串

$ 從右往左擷取最後一次匹配上string左邊的字串

$  從右往左擷取第一次匹配上string左邊的字串

我們現在來實現上面的**:

prg_info_name="make"

mke_info_act

="/bin/make"

foo ()

" = "name" ]; then

eval echo $"$var"

elif [ "$var##*_}" = "act" ]; then

eval exec $"$var" fi

}也可以判斷字首

prg_info_name="make"

mke_info_act="/bin/make"

echo # 返回: prg

echo   # 返回: mke_info

簡單的組合也可以實現複雜的功能。

Shell 字串擷取方法

linux 的字串擷取很有用。有八種方法。假設有變數 var 1.號擷取,刪除左邊字元,保留右邊字元。複製 如下 echo 其中 var 是變數名,號是運算子,表示從左邊開始刪除第乙個 號及左邊的所有字元 即刪除 http 結果是 www.aaa.com 123.htm 2.號擷取,刪除左邊字元,保...

shell字串擷取方法

shell中擷取字串的方法有很多中,一共有9種使用方法。上面4種可以用來進行預設值的替換。上面這種可以獲得字串的長度 最小限度從後面擷取word 最大限度從後面擷取word 最小限度從前面擷取word 最大限度從前面擷取word 上面4個就是用來擷取字串的方法了。有了著四種用法就不必使用cut命令來...

shell擷取字串方法

shell中擷取字串的方法有很多中,一共有9種使用方法。上面4種可以用來進行預設值的替換。上面這種可以獲得字串的長度。最小限度從後面擷取word 最大限度從後面擷取word 最小限度從前面擷取word 最大限度從前面擷取word 上面4個就是用來擷取字串的方法了。有了著四種用法就不必使用cut命令來...