55 lines
1.1 KiB
Bash
Executable File
55 lines
1.1 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# Reset the Internal Field Separator
|
|
resetIFS () {
|
|
IFS='
|
|
'
|
|
}
|
|
|
|
# Check if a string is in a list of space-separated string
|
|
#
|
|
# Arguments:
|
|
# $1: the string to be checked
|
|
# $2: the string list
|
|
#
|
|
# Return:
|
|
# 0 (true): if the string is in the list
|
|
# 1 (false): if the string is not in the list
|
|
stringInList () {
|
|
resetIFS
|
|
for stringInList_listItem in ${2}
|
|
do
|
|
if test "${1}" = "${stringInList_listItem}"
|
|
then
|
|
return 0
|
|
fi
|
|
done
|
|
return 1
|
|
}
|
|
|
|
# Return the strings that are present in two space-separated strings
|
|
#
|
|
# Arguments:
|
|
# $1: the first space-separated string
|
|
# $2: the first second-separated string
|
|
#
|
|
# Output:
|
|
# The space-separated list of strings that are present in both lists
|
|
commonElements () {
|
|
commonElements_result=''
|
|
resetIFS
|
|
for commonElements_inA in ${1}
|
|
do
|
|
if stringInList "${commonElements_inA}" "${2}"
|
|
then
|
|
if test -z "${commonElements_result}"
|
|
then
|
|
commonElements_result="${commonElements_inA}"
|
|
else
|
|
commonElements_result="${commonElements_result} ${commonElements_inA}"
|
|
fi
|
|
fi
|
|
done
|
|
echo "${commonElements_result}"
|
|
}
|