functions.sh: add a function for removing an item from a list in a shell variable

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@12024 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Felix Fietkau 2008-07-30 20:35:22 +00:00
parent b72486b308
commit 943998b6f0
1 changed files with 14 additions and 0 deletions

View File

@ -24,6 +24,20 @@ append() {
eval "export ${NO_EXPORT:+-n} -- \"$var=\${$var:+\${$var}\${value:+\$sep}}\$value\""
}
list_remove() {
local var="$1"
local remove="$2"
local val
eval "val=\" \${$var} \""
val1="${val%% $remove *}"
[ "$val1" = "$val" ] && return
val2="${val##* $remove }"
[ "$val2" = "$val" ] && return
val="${val1## } ${val2%% }"
eval "export ${NO_EXPORT:+-n} -- \"$var=\$val\""
}
config_load() {
[ -n "$IPKG_INSTROOT" ] && return 0
uci_load "$@"