prenos hesla z /etc/shadow

Kilian Igor igor.kilian na infogas.sk
Čtvrtek Duben 11 08:41:58 CEST 2002


Co tak pouzit to getline v awk scripte napr:
#!/bin/awk
{
while (getline line < "shadow.druhy")
  {
     .
     .
    split(line,b,":")
     .
     .
  }
  print $0
  close("shadow.druhy")
}



Cize pri spustni awk date ako parameter shadow.prvy a 
v scripte sa otvory aj subor shadow.druhy. Vzdy ho prejde
cely pre kazdy riadok. Pravdaze telo scriptu si opravte
na to co potrebujete. Ja osobne velmi rad pouzivam pri
praci s retazcami split. V nutri sriptu prepiste premennu $2
(co ak ste zadal -F: tak by to malo byt dane heslo). Nezabudnite
tam dat podmienky na kontrolu loginu! Dufam, ze Vam to trosku
pomoze.

Igor


> -----Original Message-----
> From: Peter Mann [mailto:Peter.Mann na tuke.sk]
> Sent: Thursday, April 11, 2002 8:19 AM
> To: linux na linux.cz
> Subject: prenos hesla z /etc/shadow
> 
> 
> Heyaaa!!!
> 
> ma niekto vytvoreny nejaky skript na prenos hesla z jedneho 
> /etc/shadow
> do ineho na inom stroji? predpokladajme, ze mam dva subory:
> /etc/shadow.stary a /etc/shadow na jednom stroji
> 
> na obidvoch strojoch maju uzivatelia identicke loginy a chcem davkovo
> preniest aj hesla - jednotlivo to funguje (copy - paste), ale 
> radovo sa
> jedna o stovky uzivatelov
> 
> expiracie a dalsie veci na novom menit nechcem - IBA heslo, 
> takze zmena
> celeho riadku neprichadza do uvahy, takisto zatial mi 
> nenavrhujte LDAP,
> jedna sa o jednorazovu zmenu a LDAP bude dalsim krokom v buducnosti
> 
> skusal som nieco taketo:
> for i in `cat zoznam_loginov`; \
> do grep ^$i: shadow.stary | awk -F: '{print $1":"$2}'; done
> ale v awk zatial neviem urobit getline z ineho suboru (teda 
> aby awk bral
> udaje z dvoch suborov naraz)
> 
> moze to byt aj perl aj hocico ine funkcne ;-))
> 
> dakujem
> 
> -- 
> 
> 5o   Peter.Mann at tuke.sk
>      KLFMANiK ICQ 12491471
>          PM2185-RIPE


Další informace o konferenci Linux