• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 740
  • Last Modified:

How do I show the progress of a korn-shell script in the form of continuous dots on the screen

I have a shell script that calls 2 perl scripts.

A.ksh
---

A1.pl
A2.pl

==================

Now A2.pl calls 3 perl scripts within itself to generate the final result through the "system" command.

Is there any way that when I run

ksh A.ksh

when the program is executing, I can show the progress in the form of dots(....)
0
sunny82
Asked:
sunny82
  • 2
1 Solution
 
woolmilkporcCommented:
I think this is only possible if all of your scripts would echo one or more dots to the terminal (without linefeed, of course) at some stage in their processing.
Your calling script cannot do that on their behalf.

wmp
0
 
TintinCommented:
This should give you the framework you need.

You may need to change

/bin/echo -n .

to

echo -e ".\c"

or

echo ".\c"

if the dots don't appear on the same line.
#!/bin/ksh

function dots {
  trap 'return' 3

  while true
  do
    /bin/echo -n .
    sleep 1
  done
}

echo "start"
dots &
pid=$!
A.pl
B.pl
kill  $pid
echo finish

Open in new window

0
 
woolmilkporcCommented:
Hehe, Tintin,
that's a real "Windows-style" progress meter! Writing a dot every second, regardless of the actual progress ...
Just joking!
wmp
0
 
sunny82Author Commented:
This is what I was looking for..Thx so much...
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now