diff options
author | Lucio Andrés Illanes Albornoz <lucio@lucioillanes.de> | 2020-02-11 17:09:12 +0000 |
---|---|---|
committer | Lucio Andrés Illanes Albornoz <lucio@lucioillanes.de> | 2020-02-11 17:09:12 +0000 |
commit | 8a04deff7e91795435db7b751352512f116c7aba (patch) | |
tree | 378077e96b475a733651627b4518c489b5f223ec /subr/ex_rtl.subr | |
parent | b969400ee0747a07b85fad554337efca46bd5908 (diff) | |
download | midipix_build-8a04deff7e91795435db7b751352512f116c7aba.tar.bz2 midipix_build-8a04deff7e91795435db7b751352512f116c7aba.tar.xz |
Implements package-package dependencies.
Diffstat (limited to 'subr/ex_rtl.subr')
-rw-r--r-- | subr/ex_rtl.subr | 32 |
1 files changed, 17 insertions, 15 deletions
diff --git a/subr/ex_rtl.subr b/subr/ex_rtl.subr index ac5632ca..3f5e8c70 100644 --- a/subr/ex_rtl.subr +++ b/subr/ex_rtl.subr @@ -14,24 +14,10 @@ ex_rtl_try_run() { if ex_rtl_test_cmd "${1}"; then "${@}"; fi; }; ex_rtl_set_var_unsafe() { [ -n "${2}" ] && eval ${1}=\"${2}\" || return 0; }; ex_rtl_test_cmd() { command -v "${1}" >/dev/null; }; ex_rtl_toupper() { echo "${1}" | tr a-z A-Z; }; +ex_rtl_uniq() { echo "${@}" | sed 's/ /\n/g' | awk '!x[$0]++' | paste -s -d" "; }; ex_rtl_unset_vars() { while [ ${#} -gt 0 ]; do unset "${1}"; shift; done; }; ex_rtl_lfilter() { - local _list="${1}" _filter="${2}" _lnew="" _litem="" _litem_filter=""; - if [ -z "${_filter}" ]; then - echo "${_list}"; return 0; - else for _litem in ${_list}; do - for _litem_filter in ${_filter}; do - if [ "${_litem_filter}" = "${_litem}" ]; then - _lnew="${_lnew:+${_lnew} }${_litem}"; - break; - fi; - done; - done; fi; - echo "${_lnew}"; -}; - -ex_rtl_lfilter_not() { local _list="${1}" _filter="${2}" _lnew="" _litem="" _litem_filter="" _filterfl=""; if [ -z "${_filter}" ]; then echo "${_list}"; return 0; @@ -58,6 +44,22 @@ ex_rtl_lmatch() { done; return 1; }; + +ex_rtl_lsearch() { + local _list="${1}" _filter="${2}" _lnew="" _litem="" _litem_filter=""; + if [ -z "${_filter}" ]; then + echo "${_list}"; return 0; + else for _litem in ${_list}; do + for _litem_filter in ${_filter}; do + if [ "${_litem_filter}" = "${_litem}" ]; then + _lnew="${_lnew:+${_lnew} }${_litem}"; + break; + fi; + done; + done; fi; + echo "${_lnew}"; +}; + ex_rtl_run_cmd_unsplit() { local _cmd="${1}" _cmdline="" _rc="" IFS; shift; while [ ${#} -gt 0 ]; do |