in reply to Formatting text, eg long lines
as they provide help to find errors in your code.#!/usr/bin/perl use strict; use warnings;
Maybe chomp: chomp(my @modules = `lsmod`); will eliminate the extra newlines.
The module Perl6::Form may be of help here although I've not used it, and there's a bit of documentation and I haven't read it all.
I tried something like this
Output is#!/usr/bin/perl use strict; use warnings; use Perl6::Form; my @modules = <DATA>; for (@modules) { my ($tables, $count, $count2, $text) = split; print form "{<<<<<<<<<<} {>>>>>} {>>} {[[[[[[[[[[[[[[[[[[[[[[[[[[ +[[[[[[}", $tables, $count, $count2, $text; } __DATA__ ip_tables 9688 3 iptable_mangle,iptable_nat,iptable_fil +ter x_tables 8964 17 xt_CONNMARK,xt_length,xt_tcpudp,ipt_d +scp,ipt_ipp2p,xt_connmark,ipt_multiport,xt_state,ipt_TOS,xt_CLASSIFY, +ipt_ACCOUNT,ipt_MASQUERADE,ipt_REDIRECT,ipt_REJECT,ipt_LOG,iptable_na +t,ip_tables sch_htb 14464 0 sch_sfq 4992 0 ppp_async 8192 0 crc_ccitt 2048 1 ppp_async ppp_synctty 6912 0 ppp_generic 21140 2 ppp_async,ppp_synctty
C:\perlp>perl t2.pl ip_tables 9688 3 iptable_mangle,iptable_nat,iptabl- e_filter x_tables 8964 17 xt_CONNMARK,xt_length,xt_tcpudp,i- pt_dscp,ipt_ipp2p,xt_connmark,ipt- _multiport,xt_state,ipt_TOS,xt_CL- ASSIFY,ipt_ACCOUNT,ipt_MASQUERADE- ,ipt_REDIRECT,ipt_REJECT,ipt_LOG,- iptable_nat,ip_tables sch_htb 14464 0 sch_sfq 4992 0 ppp_async 8192 0 crc_ccitt 2048 1 ppp_async ppp_synctty 6912 0 ppp_generic 21140 2 ppp_async,ppp_synctty
|
|---|