use strict; use warnings; use feature qw( say ); # Warning: Big slurp! ;) say for map { ( split /\s/, $_, 2 )[0] } # 3: split on whitespace. map { ( split /:/, $_, 5 )[4] } # 2: split on colons. ; # 1: auto-split on newlines. __DATA__ bsulli03:*:32452:5002:barry sullivan,l230,555-6666,:/students/bsulli03:/usr/bin/ksh sbarto22:*:32453:7990:sally bartok,l134,444-3333,:/students/sbarto22:/usr/bin/ksh sbarto25:*:32453:7990:sparky bartok,l135,444-4444,:/students/sbarto25:/usr/bin/ksh sbarto35:*:32453:7990:sammy bartok,l137,444-5555,:/students/sbarto35:/usr/bin/ksh sdemar03:*:32454:7990:sally demartra,S23,233-5234,:/students/sdemar03:/usr/bin/ksh sdemar05:*:32454:7990:bill demartra,l123,555-1234,:/students/sdemar05:/usr/bin/ksh singl04:*:32455:5002:bart singleton,l134,555-1235,:/students/singl:/usr/bin/ksh gomez:*:32456:7990:bill gomez,l433,535-6666,:/students/gomez:/usr/bin/ksh bolde01:*:32457:7990:bart bolden,l444,444-1234,:/students/bolde:/usr/bin/ksh reaga09:*:32458:7990:cal reagan,l455,333-1234,:/students/reaga:/usr/bin/ksh liu44:*:32460:5002:tom liu,s213,222-1234,:/students/liu:/usr/bin/ksh ulano:*:32462:7990:sally ulanouskay,s233,222-9999,:/students/ulano:/usr/bin/ksh tran56:*:32463:5002:phuong tran,s111,444-8888,:/students/tran:/usr/bin/ksh mehr:*:32464:5003:cindy mehr,c113,555-8888,:/students/mehr:/usr/bin/ksh ramos:*:32449:7990:olivo ramos,l454,999-0000,:/students/ramos:/usr/bin/ksh brown:*:32459:7990:bart bro,l477,888-7654,:/students/brown:/usr/bin/ksh mojic:*:32461:7990:celia mojica,c242,555-7654,:/students/mojic:/usr/bin/ksh fisher:*:2915:208:cindy fisher,l312,478-0371,:/users/fisher:/usr/bin/ksh bsulli02:*:32452:5002:bart sullivan,l130,555-5555,:/students/bsulli02:/usr/bin/ksh