Skripta za iskanje

Lp!

Ko poženem skripto in iščem želeno besedo jo najde če obstaja. Če pa beseda en ibstaja želim da bi mi izpisalo ne obstaja. Naredil sem pa tako. Če ne obstaja beseda mi itq izpiše echoja: Vnesli ste datoteka se nahaja: in beseda se nahaja v: . Rad bi pa da bi mi izpisalo Ni zadetka. Tako sem probal. Hvala za pomoč.


#!/bin/bash

echo \"Vnesite iskano besedo:\"
read beseda
echo \"Vnesli ste: $beseda\"
#egrep -rnw -e '$beseda' /home
if [ $beseda ] ; then
echo \"Datoteka se nahaja v: \"
find /home -type f -name \*.txt -exec egrep -l \"$beseda\" {} \; # išče in izpiše položaj datoteke.
echo \"*********************************\"
echo \"Beseda se nahaja v: \"
find /home -type f -name \*.txt -exec egrep -Hnw \"$beseda\" {} \;
else
echo \"Ni zadetka\"
fi
#if [[ -z $beseda ]] ; then echo \"empyt/null\"; fi
echo \"*********************************\"
#find . -type f -print -exec grep \"$beseda\" '{}' \;*
read -p \"Press enter to exit.\"

Komentarji

  • Jah poglej svoj pogoj.. ti si dal samo pogoj da obstaja beseda ne pa če jo najde da izpiše kje se nahaja .
    Tko da vedno ko vneseš besedo se pogoj izpolne in ti zato vedno izpiše "datoteka se nahaja v.. " etc.

    Malo preoblikuj svoj if :)
Za komentiranje se prijavite ali pa se vpišite.