Ukazno programiranje (težava s primerom)
SInDrOoM
Član
Imam sledeč problem. za faks moram narediti vajo oz. napisati program (skripto) katere navodilo je tako
Napišite ukazni program (prestej.sh), ki prešteje vse zbirke določenega kazala, ki v imenu vsebujejo podan niz. Program prejme dva argumenta: prvi, ki pove preiskovano kazalo in drugi, s katerim podamo niz, ki ga ime zbirke mora vsebovati. V kolikor programu ne podamo argumenta(-ov), program izpiše navodilo za uporabo.
program sem napisal takole:
ko poženem avtomatski test za preverjanje za vse besede ki jih išče pravilno najde edino ko hoče poiskat datoteke z imenom bash in sh test pade. Primer:
ko pa išče naprimer katero drugo besedo pa najde vse vredu (kot sem že omenil)
Če kdo ve kje bi lahko bila napaka bi prosil za nasvet.
lp
Napišite ukazni program (prestej.sh), ki prešteje vse zbirke določenega kazala, ki v imenu vsebujejo podan niz. Program prejme dva argumenta: prvi, ki pove preiskovano kazalo in drugi, s katerim podamo niz, ki ga ime zbirke mora vsebovati. V kolikor programu ne podamo argumenta(-ov), program izpiše navodilo za uporabo.
program sem napisal takole:
#!/bin/bash
if [ -z \"$2\" ]; then
echo Kot argument podamo dve števili
else
find $1 -type f -name $2
fi
ko poženem avtomatski test za preverjanje za vse besede ki jih išče pravilno najde edino ko hoče poiskat datoteke z imenom bash in sh test pade. Primer:
Zaganjam ./prestej.sh /home/vajeacc bash
./prestej.sh /home/vajeacc bash
find: /home/vajeacc/.ssh: Permission denied
find: /home/vajeacc/.openoffice.org2: Permission denied
find: /home/vajeacc/.gnupg: Permission denied
Napaka v skripti
ko pa išče naprimer katero drugo besedo pa najde vse vredu (kot sem že omenil)
Če kdo ve kje bi lahko bila napaka bi prosil za nasvet.
lp
Komentarji
Zgleda da imam problem tudi v ukazu za iskanje datoteke. kot sem zastopil mora program poiskati vse datoteke ki vsebujejo podano besedo in ne datoteke ki se natanko imenujejo kot podana beseda. torej verjetno ta ukaz ne pride v poštev find $1 -type f -name $2
ali se motim?
probaj s tem..
lp,cube