Найти файлы в нескольких каталогах, взятых из списка в файле?

FreeBSD 9.2 RELEASE p2

У меня есть файлfromdirs.txt, В этом файле новая директория разделена списком каталогов примерно так:

/etc
/home
/home/goods/

Мне нужно сначала найти во всех файлах каталога, которые имеют имена вроде «хорошо» или содержат строку «(NODES_'TASK ')», а затем скопировать все эти файлы в каталог/tmp.

2.sh файл chmod + x и 755 из файла dirs.txt chmod + x и 755

Этот код дает мне ошибку

IFS=$'\n' read -d '' -r -a dirs < fromDirs.txt
find "${dirs[@]}" -type f \( -name '*good*' -o -exec grep -F "(NODES_'TASK')" {} \; \) -exec cp {} /tmp/ \;

2.sh: невозможно открыть fromDirs.txt: нет такого файла или каталога

2.sh: $ {dirs [...}: плохая замена

Но файл fromDirs.txt существует и 2.sh работает из его директории размещения, также я пытаюсь предоставить полный путь вместо fromDirs.txt и ошибку то же самое

Этот код дает мне ошибку

FILE=fromDirs.txt
IFS='\n'
while read -r dirs
do
find "$dirs" -type f \( -name '*good*' -o -exec grep -F "(NODES_'TASK')" {} \; \) -exec cp {} /tmp/ \;
done < "$FILE"

2.sh: 6: Синтаксическая ошибка: «выполнено» неожиданно (ожидается «выполнено»)

Этот код дает мне ошибку тоже

FILENAME=fromDirs.txt

awk '{kount++;print  kount, $0}
     END{print "\nTotal " kount " lines read"}' $FILENAME

2.sh:: не найдено awk: невозможно открыть файл из исходной строки Dirs.txt № 2

Так как читать файл построчно и делать то, что мне нужно?