pedi para escrever um script que pesquisasse recursivamente os arquivos que correspondam ao padrão ".foo "MAS os únicos arquivos existentes nos diretórios que correspondem ao mesmo padrão".foo ". eu tentei: nome do script: search_for_foo
function foo_search {
while read line; do
echo "$line”
done < "$1"
}
for file in ${*:1}; do
if [[ $file == *.foo* ]]; then
if [[ -f "$file" ]]; then
foo_search $file
fi
if [[ -d "$file" ]]; then
search_for_foo $file/*
fi
fi
done <"$1"
tem que funcionar desta maneira: ./search_for_foo --some_file--
desde já, obrigado
Respostas:
1 para resposta № 1Você quer dizer algo como
find -path "*foo/*/foo"
0 para resposta № 2
location=$1
pattern=$2
dir=$(find $location -type d -name "*.$pattern")
ls -lrt $dir|grep ^- |awk "{print $NF}"
execute como ./script.sh / location / directory / pattern