Help: a variable list filtering via sed + "blacklist-variable"
blackcrack opened this issue · 1 comments
blackcrack commented
dirlist=$(ls /home) =>
dirlist="blackcrack akira lost&found workshop garage office"
blacklist="lost&found garage workshop"
the way to the result
echo $result
blackcrack akira office
how become from the $dirlist i a filtering with the 3 words in the $blacklist
to a result with the rest of the words..
i have try it via oneliner :
[blackcrack@blackysgate ~/bearbeit-net]$ dirlist=$(ls /home) ; blacklist="lost&found garage workshop" ; echo $dirlist | sed 's/$blacklist//'
blackcrack akira lost&found workshop garage office
[blackcrack@blackysgate ~/bearbeit-net]$
but it works not really simply with sed.. mus i use there a loop or something over "while"
best
PsypherPunk commented
Presuming your variables are as above:
dirlist="blackcrack akira lost&found workshop garage office"
blacklist="lost&found garage workshop"If you turn them into arrays then yes, you can exclude one from the other:
dirlist_array=(${dirlist})
blacklist_array=(${blacklist})
for x in ${blacklist_array[@]}
do
dirlist_array=("${dirlist_array[@]/$x}")
doneThat will give you:
$ echo ${dirlist_array[@]}
blackcrack akira officeIs that of any use?