[LUGOS-PROG] Bash skripta
Nejc Skoberne
nejc.skoberne at guest.arnes.si
Tue Apr 6 13:43:21 CEST 2004
Zdravo.
> Zgoraj imas napako tam v cut -f 5.
> To ti izpise 5. polje namesto 3, ki je UID. (Mogoce se motim, z cut-om
> nisem toliko domac)
Ja, je ze prav da izpise 5. polje, saj je delimiter presledek (in ne
prazen prostor). Sem pa ugotovil da to v par primerih odpade, tako da
sedaj uporabljam drugacno varianto: ls -lan | cut -c 17-20. Torej ker
izpljune numericne UIDe, so vedno na istem mestu kar pomeni da jih
lahko "fixed" poparsam...
> Ce prav razumem, bi rad vsebino direktorija v
> /var/spool/postfix/virtual/domena.si/xxx chownal na iste vrednosti kot je
> ima direktorij xxx? Ce ni tako, si itak napisal kar nekaj... :-)
Prav razumes. :> Finta je v tem, da pred tem importam mailboxe (kot
root) in potem moram vse skupaj "popraviti".
> cd /home || exit 1 # ce /home ne obstaja
> gid=1000
> for home in *
> do
> if [ -d /var/spool/postfix/virtual/domena.si/${home} ];
> then
> uid=`ls -ld /var/spool/postfix/virtual/domena.si/${home} | awk '{print $3}`
> chown -R $uid:$gid /var/spool/postfix/virtual/domena.si/${home}
> fi
> done
E, tocno to. :) Tale awk mi ni ravno najbolj domac ... bo treba
pogledat. Ja... itak je lazje zlistat kar direktorij sam kot
parentdir... bom vedel vnaprej.
> Namesto kompliciranja z grepom in slashem na koncu enostavno reces
> ls -ld (a je odvec) in z awkom izpises 3. part...
> Ce direktorij /var/spool/.../domena.si/${home} ne obstaja oz. ni
> direktorij, se ti del v zanki ne bo izvedel, tako se bos izognil
> morebitnim napakam.
Super, najlepsa hvala.
--
Nejc Skoberne
Grajska 5
SI-5220 Tolmin
E-mail: nejc.skoberne at guest.arnes.si
More information about the lugos-prog
mailing list