APLawrence.com -  Resources for Unix and Linux Systems, Bloggers and the self-employed

A ps problem with BBX


© February 2006 Anthony Lawrence

Someone recently asked me about increasing command width for 'ps' on SCO Unix.

The actual problem related to BBX. Apparently this gets run with very long command lines, but the part this person wanted to know about is at the end of the line - way out of the 80 character limit ps has here.

My immediate thought was to front-end BBX with a program that would capture the arguments and store them somewhere convenient. In Perl, that might look something like this:

#!/usr/bin/perl
$args=join '-',reverse @ARGV;
# just for more convenience
if ($pid = fork) {
  open(O,">pid.$pid");
  print O "$args\n";
 close O;
 waitpid($pid,0);
 unlink "pid.$pid";
} else {
  sleep 3600;
  # actually here you'd exec the real program, 
  # this is just a concept script
  exit 0;
}
 

If you wanted to be even fancier and not use a file, you could fork off yet another program with more convenient arguments:

exec 'bbxmatcher', $pid, $args;
 

That bbxmatcher would do nothing but sleep; you'd kill it off when the real bbx returned. Then a "ps -e | grep bbx" would display just what you wanted - perhaps sometimes slightly out of order, but often not, and easily identifiable.

You'd end up being able to do something like this:

$ ./bbx args args args args args args args args SOMEPROG &

$ ps -e | grep bbx
 8970  p2  S+     0:00.02 /usr/bin/perl ./bbxmatcher 8971 SOMEPROG-args-args-ar
 8971  p2  S+     0:00.00 /usr/bin/perl ./bbx args args args args args args arg
 

The "bbxmatcher" tells us that the ending argument of pid 8971 was "SOMEPROG", and could tell us other things too, if we wanted.

For production use there's probably a bit more you'd want to do, but this is the basic concept. I don't know if this meets the original person's needs, but maybe it could be used in other situations. You could arrange the arguments however you like, add extra information in more convenient formats and so on. Could be helpful for someone..

By the way, you can get BBX for Linux..


Got something to add? Send me email.





(OLDER)    <- More Stuff -> (NEWER)    (NEWEST)   

Printer Friendly Version

->
-> A ps problem with BBX


Inexpensive and informative Apple related e-books:

Take Control of iCloud, Fifth Edition

Digital Sharing Crash Course

Take Control of OS X Server

Take Control of Preview

Take Control of High Sierra




More Articles by © Anthony Lawrence




Printer Friendly Version

Have you tried Searching this site?

This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more.

Contact us


Printer Friendly Version





Sooner or later everyone sits down to a banquet of consequences. (Robert Louis Stevenson)




Linux posts

Troubleshooting posts


This post tagged:

Kernel

Perl

Programming



Unix/Linux Consultants

Skills Tests

Unix/Linux Book Reviews

My Unix/Linux Troubleshooting Book

This site runs on Linode