User:Skangsep: Difference between revisions
mNo edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
#!/bin/bash | |||
#Järgnev skript kontrollib faili olemasolu ja sellele antud õiguseid. Õigused tuleks sisestada täht-formaadis (777=rwxrwxrwx). | |||
#Kasutaja sisestab failinime, mille õigusi tahab kontrollida | |||
read -p "Sisesta failinimi : " file | |||
#Kasutaja sisestab õigused, milliste vastu ta kontrollida tahab. Õigused tuleks sisestada täht-formaadis (777=rwxrwxrwx)! | |||
read -p "sisesta õigused (peab olema t2htformaadis ja 9-kohaline) : " s_6igus | |||
#Järgnevalt leitakse failiõigused: | |||
f_6igus=(`stat -c %A $file`) | |||
#Eemaldatakse kataloogieristus | |||
f_6igus=`echo -n $f_6igus | cut -c2-10` | |||
echo $f_6igus | |||
#Järgnevalt eristatakse grupi, omaniku, teisteõigused: | |||
#owner (faili) | |||
w_6igus=`echo -n $f_6igus | cut -c1-3` | |||
echo faili omanikuõigus: $w_6igus | |||
#group (faili) | |||
g_6igus=`echo -n $f_6igus | cut -c4-6` | |||
echo faili grupiõigus: $g_6igus | |||
#other (faili) | |||
o_6igus=`echo -n $f_6igus | cut -c7-9` | |||
echo faili teiste 6igused: $o_6igus | |||
#Sama asi kasutaja sisestatud õiguste puhul | |||
echo | echo $s_6igus | ||
# | #owner (kasutaja sisestatud) | ||
ws_6igus=`echo -n $s_6igus | cut -c1-3` | |||
echo sisestatud omanikuõigus: $ws_6igus | |||
#group (kasutaja sisestatud) | |||
gs_6igus=`echo -n $s_6igus | cut -c4-6` | |||
echo sisestatud grupiõigus: $gs_6igus | |||
#other (kasutaja sisestatud) | |||
oo_6igus=`echo -n $s_6igus | cut -c7-9` | |||
echo sisestatud teiste 6igused: $oo_6igus | |||
#Õiguste võrdlemise loogika | |||
if [ $(w_6igus) != $(ws_6igus) ] | |||
if [ | then | ||
echo 2-omanikul valed õigused | |||
fi | |||
if [ $(g_õigus) != $(gs_õigus) ] | |||
then | |||
echo 3-grupil valed õigused | |||
fi | |||
if [ $(o_6igus) != $(oo_õigus) ] | |||
then | |||
echo 4-teistel kasutajatel valed õigused | |||
fi | |||
#faili ei leitud | |||
else | |||
echo 1 | |||
fi | fi | ||
Revision as of 20:57, 11 May 2011
- !/bin/bash
- Järgnev skript kontrollib faili olemasolu ja sellele antud õiguseid. Õigused tuleks sisestada täht-formaadis (777=rwxrwxrwx).
- Kasutaja sisestab failinime, mille õigusi tahab kontrollida
read -p "Sisesta failinimi : " file
- Kasutaja sisestab õigused, milliste vastu ta kontrollida tahab. Õigused tuleks sisestada täht-formaadis (777=rwxrwxrwx)!
read -p "sisesta õigused (peab olema t2htformaadis ja 9-kohaline) : " s_6igus
- Järgnevalt leitakse failiõigused:
f_6igus=(`stat -c %A $file`)
- Eemaldatakse kataloogieristus
f_6igus=`echo -n $f_6igus | cut -c2-10` echo $f_6igus
- Järgnevalt eristatakse grupi, omaniku, teisteõigused:
- owner (faili)
w_6igus=`echo -n $f_6igus | cut -c1-3` echo faili omanikuõigus: $w_6igus
- group (faili)
g_6igus=`echo -n $f_6igus | cut -c4-6` echo faili grupiõigus: $g_6igus
- other (faili)
o_6igus=`echo -n $f_6igus | cut -c7-9` echo faili teiste 6igused: $o_6igus
- Sama asi kasutaja sisestatud õiguste puhul
echo $s_6igus
- owner (kasutaja sisestatud)
ws_6igus=`echo -n $s_6igus | cut -c1-3` echo sisestatud omanikuõigus: $ws_6igus
- group (kasutaja sisestatud)
gs_6igus=`echo -n $s_6igus | cut -c4-6` echo sisestatud grupiõigus: $gs_6igus
- other (kasutaja sisestatud)
oo_6igus=`echo -n $s_6igus | cut -c7-9` echo sisestatud teiste 6igused: $oo_6igus
- Õiguste võrdlemise loogika
if [ $(w_6igus) != $(ws_6igus) ] then echo 2-omanikul valed õigused fi if [ $(g_õigus) != $(gs_õigus) ] then echo 3-grupil valed õigused fi if [ $(o_6igus) != $(oo_õigus) ] then echo 4-teistel kasutajatel valed õigused fi
- faili ei leitud
else echo 1 fi