script a setovanie premennej

Brano Zarnovican zarnovican na pobox.sk
Pátek Červenec 7 12:09:42 CEST 2000


On Fri, Jul 07, 2000 at 11:27:32AM +0200, Igor Kilian wrote:
> Pri pisani skriptu som sa stretol s problemom ze chcem nasetovat premennu na
> jeden krat bez pouzitia pomocnych premennych. Da sa to? Ide asi o toto:
> Vypis IP adresy z ktorej sa hlasim je:
> w -hs | grep `whoami` | grep `who am i | awk '{print $2}'` | awk '{print $3}'
Wow!

w -hs | grep `whoami`
prikaz w ma aj argument <username> takze je cistejsie
w -hs `whoami`

who am i | awk '{print $2}'
toto ma pravdepodobne vypisat terminal na ktorom ste, da sa to aj takto:
tty | sed s%^/dev/%%

Ale aj tak mi zmysel toho celeho unika. Na mojom linuxe napr.
prikaz w vypisuje hostname a nie IP a to este nie cele, ale orezane
na nejaku konstantnu dlzku.

Naproti tomu prikaz who am i to vypise hned a neorezane. Nestaci vam
len
who am i | sed 's/^.*(\([^)]*\))$/\1/'
Ten humus v sed-e, je vdaka tomu, ze hostname je v zatvorkach, ktore
maju pre sed specialny vyznam.

						BranoZ


Další informace o konferenci Linux