25
lis

Finder

Możliwość komentowania Finder została wyłączona
Poszukiwacz pików, działa na zasadzie współbieżnych, rekurencyjnych wywołań dla wszystkich podkatalogów danego katalogu.
#!/bin/bash

directory=$1
filename=$2
declare -a pids
declare -i status=0

if [ -d $directory ]					 # Jesli folder istnieje
then
	if [ -e $directory/$filename ]		 # jesli plik w danym folderze istnieje
	then
		echo -e "\033[42;37;1m $directory/$filename \033[0m"
		status=1
	fi
	echo -e "$directory/ "

	for subDirectory in $directory/*					
	  do
		if [ -d $subDirectory ]
		then
			./finder.sh $subDirectory $filename 1 & # Rekurencyjne wywołanie funkcji 
			pid=$$
			pids=( ${pids[@]-} $(echo "$pid") )
		fi
	done
	for i in $pids
	do
		wait $!					# Czekamy na ostatni proces potomny
		if [  $? -eq 1 ]		
		then 
			status=1			
		fi
	done

else
	echo -e "\033[41;37;1m Can't find '\033[44;37;1m$directory\033[0m\033[41;37;1m' folder!!!! \033[0m"
fi

if [ -e $3 ] && [ $status -eq 0 ] 		# Jeśli istnieje trzeci argument i zwrócony status wynosi 0, tzn ze nie znaleziono pliku.
then 
	echo -e "\033[41;37;1m File not found \033[0m"
fi
exit $status

Brak komentarzy

Brak komentarza.

Sorry, the comment form is closed at this time.

Comments RSS Feed