printf "TFD> %32.32s %16.16s %s %s\n", $user, $pass, ($b_admin? '*': ' ') x 8, ($b_reports? '*': ' ') x 8; #### #!/usr/bin/perl -w # Strict use strict; use warnings; # Libs use Data::Dumper; # User-defined my $pusers = { jack => 1, jill => 0, tom => 1, dick => 0, harry => 0, thelma => 0, louise => 1, }; # Main program my $mark; foreach my $user (sort keys %$pusers) { my $flag = $pusers->{$user}; printf "%10.10s %s\n", $user, ($flag? '*': ' ') x 8; } #### dick harry jack * jill louise * thelma tom * #### # Main program my $mark; foreach my $user (sort keys %$pusers) { my $flag = $pusers->{$user}; printf "%10.10s %s\n", $user, ($flag? '*': ' ') x 8; $mark = $flag? '*': ' '; printf "%10.10s %s\n", $user, $mark x 8; } #### dick dick harry harry jack * jack ******** jill jill louise * louise ******** thelma thelma tom * tom ******** #### # Subroutines sub myprintf { my (@args) = @_; printf "TFD> %s\n", Dumper(\@args); } # Main program my $mark; foreach my $user (sort keys %$pusers) { my $flag = $pusers->{$user}; $mark = $flag? '*': ' '; myprintf "%10.10s %s\n", $user, $mark x 8; myprintf "%10.10s %s\n", $user, ($flag? '*': ' ') x 8; } #### TFD> $VAR1 = [ '%10.10s %s ', 'jack', '********' ]; TFD> $VAR1 = [ '%10.10s %s ', 'jack', '*', '*', '*', '*', '*', '*', '*', '*' ]; #### printf "TFD> %32.32s %16.16s %s %s\n", $user, $pass, scalar ($b_admin? '*': ' ') x 8, scalar ($b_reports? '*': ' ') x 8; #### printf "TFD> %32.32s %16.16s %s %s\n", $user, $pass, ''.($b_admin? '*': ' ') x 8, ''.($b_reports? '*': ' ') x 8;