diff -r 4bdc4f2e1a93 -r 277de5572f99 script/lsec.pl --- a/script/lsec.pl Fri Sep 08 12:51:04 2006 +0000 +++ b/script/lsec.pl Mon Sep 11 08:52:41 2006 +0000 @@ -37,20 +37,45 @@ # #------------------------------------------------------------------------------ +require 'sys/ioctl.ph'; + use strict; use Getopt::Std; my $master_index; my $master_dir; +my $term_width; #------------------------------------------------------------------------------ +$term_width = &get_terminal_width; &get_options; &query_master; exit 0; #------------------------------------------------------------------------------ +sub get_terminal_width +{ + my $winsize; + die "no TIOCGWINSZ " unless defined &TIOCGWINSZ; + open(TTY, "+{'state'} = $1; } + elsif ($line =~ /^Coupler: ([a-z]+)$/) { + $slave->{'coupler'} = $1; + } } close INFO; @@ -106,10 +134,11 @@ print "EtherCAT bus listing for master $master_index:\n"; for $slave (@slaves) { - $abs = sprintf "%i", $slave->{'ring_position'}; - printf(" %3s %8s %-6s %s\n", - $abs, $slave->{'advanced_position'}, - $slave->{'state'}, $slave->{'name'}); + print_line if $slave->{'coupler'} eq "yes"; + $abs = sprintf "%i", $slave->{'ring_position'}; + printf(" %3s %8s %-6s %s\n", + $abs, $slave->{'advanced_position'}, + $slave->{'state'}, $slave->{'name'}); } }