If there is an entry then the job is still running
If there isn't then the job has completed
This is more simply and more correctly done with:
which will give you a zero exit status if one or more copies of processes are running with a name containing the string abc.sh. Using [.] instead of just . gets rid of the need for grep -v grep and keeps strings like abcdsh from accidentally being selected.
If there might be other processes running that are named with a longer string containing abc.sh, you can avoid that problem with the more complex:
Note that none of these suggestions will keep this from mistakenly indicating that abc.sh is running if any process is running with an argument that is abc.sh.
This User Gave Thanks to Don Cragun For This Post:
Hi All,
I have requirement. I am running a job every 30mins. before starting the process, i need to check the process, if the process is still running then i need not trigger the process again, if it is not running then trigger the process again. I am using cron to trigger the shell script. Can... (7 Replies)
Hi,
I am developing a script that would do a 'rsh' on a client machine.
I want to invoke a script in client machine which would keep on polling data to the server.
I want the rsh to return back once it invoked the script on client and the script should run on background on client.
... (2 Replies)
Gurus,
Pls. help on this to run the script in background.
I have a script to run the informatica workflows using PMCMD in script.
Say the script name is test.sh & Parameters to the script is Y Y Y Y
The no of parameters to the bove script is 4. all are going to be a flags. Each flag will... (2 Replies)
I have a folder which in turn has numerous sub folders all containing pdf files with same file named in different ways.
So I need a script if it can be written to find and print the duplicate files (That is files with same size) along with the respective paths.
So I assume here that same file... (5 Replies)
Hello - I submitted one background job last night and it completed today morning.I want to know exact time the job completed.
I submitted backgroung job like this
nohup cp -Rp /opt/apps/prod/proddb/proddata . &
I want to know when above job completed on UNIX server.Above command... (9 Replies)
hi.
i need to start a shellscript AFTER full system startup
the script will then run permanently in a loop checking the server every minute and in case of major hangs it just reboots the machine.
i put it into /etc/rc.local file like this:
#!/bin/sh -e
#
# rc.local
#
# This script is... (4 Replies)
I have a script called startWebLogic.sh which I was running in the background but the problem is which I used the command :- ps -elf | grep "startWebLogic.sh" | grep -v grep to find the process id but I was unable to find the process id for this script and when I checked from the front end the... (3 Replies)
Hello, I was trying to make some processes to run at background and went to a problem.
First I tried just to loop in one line something like this:
for i in {1..10}; do echo 'hello world' &; done;
but it pops a syntax error, so I tried several ways to fix it but wasn't able to understand... (2 Replies)
Hi,
I have this simple c program that creates duplicate process with fork():
#include <sys/types.h>
main()
{
if (fork() == 0)
while(1);
else
while(1);
}
I tried running it in the background
gcc -o test first.c
test &
And I got this list of running process: (4 Replies)
Discussion started by: uniran
4 Replies
LEARN ABOUT DEBIAN
expect_unbuffer
UNBUFFER(1) General Commands Manual UNBUFFER(1)NAME
unbuffer - unbuffer output
SYNOPSIS
unbuffer program [ args ]
INTRODUCTION
unbuffer disables the output buffering that occurs when program output is redirected from non-interactive programs. For example, suppose
you are watching the output from a fifo by running it through od and then more.
od -c /tmp/fifo | more
You will not see anything until a full page of output has been produced.
You can disable this automatic buffering as follows:
unbuffer od -c /tmp/fifo | more
Normally, unbuffer does not read from stdin. This simplifies use of unbuffer in some situations. To use unbuffer in a pipeline, use the
-p flag. Example:
process1 | unbuffer -p process2 | process3
CAVEATS
unbuffer -p may appear to work incorrectly if a process feeding input to unbuffer exits. Consider:
process1 | unbuffer -p process2 | process3
If process1 exits, process2 may not yet have finished. It is impossible for unbuffer to know long to wait for process2 and process2 may
not ever finish, for example, if it is a filter. For expediency, unbuffer simply exits when it encounters an EOF from either its input or
process2.
In order to have a version of unbuffer that worked in all situations, an oracle would be necessary. If you want an application-specific
solution, workarounds or hand-coded Expect may be more suitable. For example, the following example shows how to allow grep to finish pro-
cessing when the cat before it finishes first. Using cat to feed grep would never require unbuffer in real life. It is merely a place-
holder for some imaginary process that may or may not finish. Similarly, the final cat at the end of the pipeline is also a placeholder
for another process.
$ cat /tmp/abcdef.log | grep abc | cat
abcdef
xxxabc defxxx
$ cat /tmp/abcdef.log | unbuffer grep abc | cat
$ (cat /tmp/abcdef.log ; sleep 1) | unbuffer grep abc | cat
abcdef
xxxabc defxxx
$
BUGS
The man page is longer than the program.
SEE ALSO
"Exploring Expect: A Tcl-Based Toolkit for Automating Interactive Programs" by Don Libes, O'Reilly and Associates, January 1995.
AUTHOR
Don Libes, National Institute of Standards and Technology
1 June 1994 UNBUFFER(1)