Buonasera, il mio problema nasce dalla necessità di eliminare una lista di file memorizzata in un bash array di stringhe. A mio malgrado quando stampo la lista ogni elemento viene racchiuso tra parentesi graffe.

Quando eseguo:
codice:
echo $list
$list >> rm
Output:
codice:
{bash/file2}{bash/file1}
./bash/es9.sh: riga 19: {bash/f2}{bash/f1}: File o directory non esistente
Allorché ho pensato di porre un filtro sintattico fra la lista e lo script di rimozione, con l'ausilio di grep ho ottenuto questo:
codice:
$ echo {ciao/ciao} | grep -o "[a-z0-9/]*"
ciao/ciao
Ma naturalmente matcha esclusivamente le sottostringhe che contengono lettere, numeri e il carattere "/". Non riconoscerebbe per esempio la stringa "dir/file.txt". Ciò che m'occorrerebbe è un'espressione regolare che riconosca tutte le sottostringhe comprese tra parentesi graffe.