Help with shell script - Calling a script through script
Hi,
I have written a shell script to grep a certain parameter and send a mail if they found any. Now i want this script to call another script which will restart my application.
Here is my script
Code:
#!/bin/sh
DATE=`date +%Y%m%d%H%M%S`
HOME=/home/dumbren/vfnz_data/AMS_report
LOG_DIR=/apps/prod/vfonline/weblogic100/domains/vfop6dom/servers/ams-stream1-svr1/logs
JKIT=/apps/prod/vfonline/weblogic100/domains/vfop6dom/servers/ams-stream1-svr1
CONSOLE_FILE=console.log.20110405175955
ALERTS_FILE=alerts_ejb1.log.1
CONSOLE_OUTPUT=/home/dumbren/vfnz_data/console
ALERTS_OUTPUT=/home/dumbren/vfnz_data/alerts
APPLICATION_PID=`ps -ef | grep "ams-1" | grep -i java |awk '{ print $2 }'`
#-------------------------------------------------------------------------------------------------------
#
# To find exception "OutOfMemory" in logs and restart application if we found any
#
#-------------------------------------------------------------------------------------------------------
cd $LOG_DIR
tail -f $CONSOLE_FILE > $CONSOLE_OUTPUT &
grep "java.lang.OutOfMemoryError" $CONSOLE_FILE > $CONSOLE_OUTPUT
sleep 10
`ps -ef | sed -n '/tail/{/grep/!p;}' | grep "console.log" |awk '{print$2}' | xargs -i kill {}`
sleep 10
a=`ls -lrth $CONSOLE_OUTPUT |awk '{print$5}'`
if [ $a -eq 0 ];
then
echo "The file is empty"
else
echo "The Vaule of A differs, please check"
#/usr/bin/printf "***** AMS ALERT - $DATE *****\n\nHost: `hostname` \n\nDATE: `date` \n\n" | /bin/mail -s " AMS Error $DATE " user@dom.com
m < /home/dumbren/console
fi
exit 0
here is it find any exception then it should directly call the other script "./ams_rc stop" which will stop application and then will start the same with same script "./ams_rc start"
Regards,
SiddheshK
Moderator's Comments:
Please use [code] and [/code] tags when posting code, data or logs etc. to preserve formatting and enhance readability, thanks. Also replace your email address with some dummy address next time, ty.
Last edited by zaxxon; 04-18-2011 at 06:28 AM..
Reason: code tags
I have a build script. It was created on Linux. For some reason, I got it to windows and modified it. And brought it back again to Linux.
Since there is the question of the ^M chars appearing, the way out is to do a dos2unix on the script file. This is done manually.
Is there a way to call... (4 Replies)
Hi all,
i have a perl script one server. I am running a cronjob to execute my perl script.
#! /usr/bin/perl
...
...
...
#call a shell script on another server How can i accomplish #?
Do i have to issue a system (" ssh -l username server | shellscript.sh") in my shell script? or is there a... (1 Reply)
Hi all,
I have two ksh scripts
#sample1.sh
#!/bin/ksh
. ./sample2.sh
echo $fileExist
#sample2.sh
#!/bin/ksh
func()
{
i=1
return $a
}
func
echo $?
Here how should I return the value of sample2.sh back to sample1.sh?
Thanks in advance. (2 Replies)
Hi,
I have one shel script which returns some value and I am calling this shell script from a perl script which needs the out put/return value of shell script.
But I don't know how to collect the output/return value of the shell script. Can any one give some idea on it?
For example:
The... (1 Reply)
hello everyone
i am beginner on shell scripting .and i am working on my project work on ad hoc network
i wrote a batch (.sh) to do a looping and execute a tcl script i wrote before in each iteration ..but i got this problem "
syntax error near unexpected token `('... (1 Reply)
HI,
We are using two shell scripts, script.sh,env.sh, where env.sh will be called inside script.sh. The variable inside env.sh is used as $var in script.sh.But while running the script its not identifying that variable. Is there any permission needed to call a script inside another script.
... (3 Replies)
Can someone let me know how could I achieve this
In one of per script I am calling the shell script but I need to so one thing that is one shell script call I need to pass pne argument.In below code I am calling my ftp script but here I want to pass one argument so how could I do this (e.g:... (5 Replies)
Hi,
I am working on a sever A.
I want to write a perl script to execute a shell script persent on the server B.
please help me in this.
thanks in advance. (3 Replies)
I am getting the following error while passing parameter to a shell script called within awk script. Any idea what's causing this issue and how to ix it ? Thanks
sh: -c: line 0: syntax error near unexpected token `newline'
sh: -c: line 0: `./billdatecalc.sh ... (10 Replies)
I am trying to call a script(callingscript.sh) from a master script(masterscript.sh) to get string type value from calling script to master script. I have used scripts mentioned below.
#masterscript.sh
./callingscript.sh
echo $fileExist
#callingscript.sh
echo "The script is called"... (2 Replies)
Discussion started by: Raj Roy
2 Replies
LEARN ABOUT LINUX
npm-run-script
NPM-RUN-SCRIPT(1)NPM-RUN-SCRIPT(1)NAME
npm-run-script - Run arbitrary package scripts
SYNOPSIS
npm run-script <command> [--silent] [-- <args>...]
alias: npm run
DESCRIPTION
This runs an arbitrary command from a package's "scripts" object. If no "command" is provided, it will list the available scripts.
run[-script] is used by the test, start, restart, and stop commands, but can be called directly, as well. When the scripts in the package
are printed out, they're separated into lifecycle (test, start, restart) and directly-run scripts.
As of ` https://blog.npmjs.org/post/98131109725/npm-2-0-0, you can use custom arguments when executing scripts. The special option -- is
used by getopt https://goo.gl/KxMmtG to delimit the end of the options. npm will pass all the arguments after the -- directly to your
script:
npm run test -- --grep="pattern"
The arguments will only be passed to the script specified after npm run and not to any pre or post script.
The env script is a special built-in command that can be used to list environment variables that will be available to the script at run-
time. If an "env" command is defined in your package, it will take precedence over the built-in.
In addition to the shell's pre-existing PATH, npm run adds node_modules/.bin to the PATH provided to scripts. Any binaries provided by
locally-installed dependencies can be used without the node_modules/.bin prefix. For example, if there is a devDependency on tap in your
package, you should write:
"scripts": {"test": "tap test/*.js"}
instead of
"scripts": {"test": "node_modules/.bin/tap test/*.js"}
to run your tests.
The actual shell your script is run within is platform dependent. By default, on Unix-like systems it is the /bin/sh command, on Windows it
is the cmd.exe. The actual shell referred to by /bin/sh also depends on the system. As of `
https://github.com/npm/npm/releases/tag/v5.1.0 you can customize the shell with the script-shell configuration.
Scripts are run from the root of the module, regardless of what your current working directory is when you call npm run. If you want your
script to use different behavior based on what subdirectory you're in, you can use the INIT_CWD environment variable, which holds the full
path you were in when you ran npm run.
npm run sets the NODE environment variable to the node executable with which npm is executed. Also, if the --scripts-prepend-node-path is
passed, the directory within which node resides is added to the PATH. If --scripts-prepend-node-path=auto is passed (which has been the
default in npm v3), this is only performed when that node executable is not found in the PATH.
If you try to run a script without having a node_modules directory and it fails, you will be given a warning to run npm install, just in
case you've forgotten.
You can use the --silent flag to prevent showing npm ERR! output on error.
You can use the --if-present flag to avoid exiting with a non-zero exit code when the script is undefined. This lets you run potentially
undefined scripts without breaking the execution chain.
SEE ALSO
o npm help 7 scripts
o npm help test
o npm help start
o npm help restart
o npm help stop
o npm help 7 config
January 2019 NPM-RUN-SCRIPT(1)