Primeiro, for I in file
provavelmente deve ser for I in $file
; a
cifrão é necessário ao recuperar o valor de uma variável.
Eu alteraria seu script das seguintes maneiras:
echo "What file names are you searching for?"
read files
filepath=/test/dir1
for f in $files
do
echo "$f"
find "$filepath"/"$f"
done
Eu removi a atribuição para $file
de $filenames
e assumi que você
significava que o usuário inserisse vários nomes de arquivos separados por espaço em branco.
Então eu passei find
de um único caminho, construído separando o
nome do diretório e o nome do arquivo com uma única barra. Se você quisesse
procure por um arquivo chamado assim em uma profundidade arbitrária, você pode usar find
"$filepath" -name "$f"
.