Sponsored Content
Top Forums Shell Programming and Scripting grep'ing a file until a certain message appears Post 302196740 by elthox on Monday 19th of May 2008 10:02:34 AM
Old 05-19-2008
Quote:
Originally Posted by pallak7
Hello,

I'm writing a script that will automate the launch of some services on my AIX machine. However, some services are dependent on the successful startup of others. When I start these services manually, I usually just check a log file until I see a message that confirms a successful startup. So, I figure I can integrate this into my script but I'm not sure what the best way to do it is. I was thinking something like this:
Code:
while [ `tail -f /path/to/log/file | grep "PATTERN"` -ne "0" ]; do
done

but that seems cumbersome for the system (not to mention the fact that I don't think it's working). What would be the best approach here? Thanks for your help.

By the way, I'm using the Korn shell.

As your concern is to check if related service is Up or not running I think you have to deal with "ps -ef"

So if you want to run your script after being sure that apache is Up you can do it like this

If [`ps -ef|egrep -i "http|apache"|wc -l` -gt 1 ]
then
.........
fi


Hope this helps
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

grep'ing for text within a bunch of files...?

I have, say, a dozen files, and I want to grep for a string of text within them. I don't remember the exact syntax, but let me give it a shot and show you an idea here... find . -type f -exec grep thisword {} \; ...and there's a way to put more than one grep into the statement, so it will tell... (1 Reply)
Discussion started by: kitykity
1 Replies

2. Shell Programming and Scripting

grep'ing for specific directories, and using the output to move files

Hello, this is probably another really simple tasks for most of you gurus, however I am trying to make a script which takes an input, greps a specific file for that input, prints back to screen the results (which are directory names) and then be able to use the directory names to move files.... (1 Reply)
Discussion started by: JayC89
1 Replies

3. Shell Programming and Scripting

grep'ing and sed'ing chunks in bash... need help on speeding up a log parser.

I have a file that is 20 - 80+ MB in size that is a certain type of log file. It logs one of our processes and this process is multi-threaded. Therefore the log file is kind of a mess. Here's an example: The logfile looks like: "DATE TIME - THREAD ID - Details", and a new file is created... (4 Replies)
Discussion started by: elinenbe
4 Replies

4. Shell Programming and Scripting

pipe'ing grep output to awk

This script is supposed to find out if tomcat is running or not. #!/bin/sh if netstat -a | grep `grep ${1}: /tomcat/bases | awk -F: '{print $3}'` > /dev/null then echo Tomcat for $1 running else echo Tomcat for $1 NOT running fi the /tomcat/bases is a file that... (2 Replies)
Discussion started by: ziggy25
2 Replies

5. Shell Programming and Scripting

grep'ing a variable that contains a metacharacter ($) with a while loop

This is driving me crazy, and I'm hoping someone can help me out with this. I'm trying to do a simple while loop to go through a log file. I'm pulling out all of the lines with a specific log line, getting an ID from that line, and once I have a list of IDs I want to loop back through the log and... (2 Replies)
Discussion started by: DeCoTwc
2 Replies

6. Shell Programming and Scripting

Severe performance issue while 'grep'ing on large volume of data

Background ------------- The Unix flavor can be any amongst Solaris, AIX, HP-UX and Linux. I have below 2 flat files. File-1 ------ Contains 50,000 rows with 2 fields in each row, separated by pipe. Row structure is like Object_Id|Object_Name, as following: 111|XXX 222|YYY 333|ZZZ ... (6 Replies)
Discussion started by: Souvik
6 Replies

7. Shell Programming and Scripting

grep'ing dot history file

Hi, I tried to grep ".sh_history" (DOTsh_history) file and did not return anything though I found the word in .sh _history file through vi editor in Linux. Then I tried to grep ".profile" to check if it is the prob with hidden files and I got results. Then I verified the same with my friend... (4 Replies)
Discussion started by: bobbygsk
4 Replies

8. Shell Programming and Scripting

Grep'ing information from a log file on SUN OS 5

Hi Guys, I'm trying to write an script that will be launched by a user. The script will look at a log file and check for alerts with the date (supplied by user) and a machine's hostname (also supplied by the user). I'm trying to get the output formatted just like the log file. The logfile looks... (5 Replies)
Discussion started by: illgetit
5 Replies

9. UNIX for Dummies Questions & Answers

grep'ing a variable - why not working

Hi all, Am writing a ksh script where I am looking for processes that has gone defunct and all of which has the same PPID PID is the variable that I need to match as this is the process ID of the processes that has gone defunct Am just curious how come the following DOES NOT work? ps... (6 Replies)
Discussion started by: newbie_01
6 Replies

10. UNIX for Dummies Questions & Answers

After Ftp'ing file to destination how to check the file if it is in correct ASCII and not corrupted

Hi Folks, While transferring file from FTP software like Filezilla the files gets corrupted. Is there any way I can check if the recently transferred file is in ASCII and not corrupted. I have tried using file -i filename command which does tell if the file character set is ASCII or binary... (6 Replies)
Discussion started by: Khan28
6 Replies
CHKCONFIG(8)						      System Manager's Manual						      CHKCONFIG(8)

NAME
chkconfig - enable or disable system services SYNOPSIS
chkconfig -t|--terse [names] chkconfig -s|--set [name state] chkconfig -e|--edit [names] chkconfig -c|--check name [state] chkconfig -l|--list [--deps] [names] chkconfig -A|--allservices chkconfig -a|--add [names] chkconfig -d|--del [names] DESCRIPTION
chkconfig is used to manipulate the runlevel links at boot time (see init.d(7)). It can be thought of as a frontend to insserv(8). Chk- config can run in six different modes: terse list mode, set mode, edit mode, list mode, add mode and delete mode. The last three modes were added for compatiblity reasons. TERSE LIST MODE
This mode lists the state of the specified services, or all known services if no service name was provided. Every printed line consists of the name of the service and the runlevels the service is configured for at the moment. If it is configured in no runlevel, off is used instead, if it is configured in the runlevels defined as a default by the start script, on is used. If the service is an enabled inetd or xinetd service, inetd and xinetd are used. Inetd/xinetd services are configured in /etc/inetd.d and /etc/xinetd.d, respectively. You can use the -A or --allservices parameter to get all services (even the boot.*-services) listed. If chkconfig is called without arguments, all services are listed in terse mode. SET MODE
Set mode is used to configure at which runlevel a service should be started. The arguments must be specified as pairs of service name and new state. You can use on and off as special states to select the default set of runlevels or to disable a service completely. You can use inetd or xinetd to configure a service managed by the inetd/xinetd daemons. Insserv can calculate dependencies for only one service at the same time. To work around this limitation imposed by insserv, chkconfig uses the '-f' option of insserv when it reads the list of services from standard input. Note that --force switches off all dependency checks and could lead to depending services no longer working, use with care. If no services are specified, chkconfig reads lines from standard input. Each line must consist of a service/state pair. As this is exactly the output of the terse list mode, this can be used to reconfigure a service specification saved by a former run. If the option -f or --force is also given, insserv is called with a '-f' option. EDIT MODE
This mode is a combination of the terse list mode and set mode. It writes the state of all specified services (or all known services, if no service was provided) into a temporary file, starts an editor and re-configures all services to reflect the states of the changed tempo- rary file. CHECK MODE
This mode can be used to check the state of a service. chkconfig exits with a return code of '0' if the service is enabled in all of the specified runlevels, otherwise the exit status is '1'. If chkconfig is called with only a service name the current runlevel of the system is used for checking. LIST MODE
List mode prints for each specified service a line that consists of the service name and for runlevels zero to six on or off depending if the service will be started or not. on will be printed in bright green if the output is written to a terminal. If the --deps option is given, the names of the services that must be started before this service is appended to each line. The inetd/xinetd services are listed in extra sections. You can use the -A or --allservices parameter to get all services (even the boot.*-services) listed. ADD MODE
Calls insserv to enable a service and uses list mode to display the new setting afterwards. DEL MODE
Same as add mode, but disable the service. OTHER OPTIONS
When no service names are given on the command line, chkconfig defaults to all known services excluding those that are not enabled in run- levels 1 to 6 and start with 'boot.'. Use the --allservices or -A option if you want to see such services as well. EXAMPLES
chkconfig list the runlevel configuration of all known services chkconfig apache list the runlevel configuration of the apache web server chkconfig -t apache xntpd list the runlevel configuration of the apache web server and the network time protocol daemon. chkconfig apache on configure the apache web server to be started on next boot time. chkconfig apache 5 configure the apache web server to be started only if the system reaches runlevel 5. chkconfig apache 35 configure the apache web server for runlevel 3 and 5. chkconfig apache on xntpd off configure two services chkconfig finger xinetd configure a xinetd service chkconfig -A >~root/chkconfig.save backup the current configuration chkconfig -s <~root/chkconfig.save restore the configuration chkconfig -e apache xntpd change the runlevel configuration interactively chkconfig -e change the runlevel configuration of all services interactively FILES
/etc/init.d/ path to the boot script base directory as required by the Linux Standard Base Specification (LSB). /etc/inetd.d/ path to the inetd services. See the inetd manpage to find out how to enable this feature. /etc/xinetd.d/ path to the xinetd services. SEE ALSO
init.d(7), init(7), inetd(8) xinetd(8) insserv(8) COPYRIGHT
2003 SuSE Linux AG, Nuernberg, Germany. AUTHOR
Michael Schroeder <mls@suse.de> Oct 2006 CHKCONFIG(8)
All times are GMT -4. The time now is 10:24 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy