Sponsored Content
Full Discussion: Script Issue
Top Forums Shell Programming and Scripting Script Issue Post 302559043 by hartz on Monday 26th of September 2011 06:30:59 AM
Old 09-26-2011
Yes, as mentioned by scottn, please do ask a question. Give us some more information to work on. What do you expect to happen? What is in fact happening?

I will just answer some random questions, maybe I hit the target by shooting in the dark :-)

From the script below what I notice:
I would run the script in ksh, particularly for the cat $FILE | read X construct. You should also google "uuoc".

And regarding the use of "test", Unless you plan on porting the script to some other strange shell, rather use [ $? = 0 ]

In terms of general coding, I could suggest that when piping inside a loop of if-else structure, then you could also do it outside, as in this case

Code:
while read HOST
do 
   command | grep | whatever
done

can be done as

Code:
while read HOST
do
  command
done | grep | whatever

The same with the if

Code:
if XXX
then
  command | tee XYZ
else
  othercommand | tee XYZ
fi

could be done as

Code:
if XXX
then
  command
else
  othercommand
fi | tee XYZ

If you want to simplify the script, you can combine the grep and the awk, eg
Code:
echo $HOST `$PLUGIN -H $HOST -p $PORT` | grep -E 'timeout|CHECK_NRPE|refused' | awk '{print $1}' >> $LOG

could become
Code:
echo $HOST `$PLUGIN -H $HOST -p $PORT` | awk '/timeout/||/CHECK_NRPE/||/refused/ {print $1}' >> $LOG

In stead of using "more" in a script and piping it to another command, use "cat", and instead of using cat, use <$FILE (google uuoc again)

Some of this is just about simplifying the script. Some of it is about coding habits. Some of it is about efficiency. All of these things together makes it easier to pinpoint why scripts fail, even when they don't directly solve the problem!
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Bash script: issue changing directories in script

I am working on a script that checks two arguments at the command line. The first argument is a search pattern, the second can be a file or a directory, if it is a file a second script is called that checks it for the search pattern. If the second argument is a directory, it checks for the search... (5 Replies)
Discussion started by: Breakology
5 Replies

2. Shell Programming and Scripting

Issue with the script

#!/bin/ksh set -x SQLSTR="LOGIN/PASSWORD" sqlplus -s ${SQLSTR} @<<EOF set pagesize 0 feedback off verify off heading off echo off; UPDATE TABLE NAME SET VALUE = VALUE + 1 where VALUE2 = 'ABCDE'; exit; COMMIT; EOF i am not able to update the column and not able to exit from sqlplus. ... (7 Replies)
Discussion started by: karthicss
7 Replies

3. Shell Programming and Scripting

Script running from another script issue

Hello All, I am ruuning the below script. userchecking.sh ########################### #! /bin/ksh NIS_SCRIPT_HOME="/mot/systems/NIS_SCRIPT_NEW" . $NIS_SCRIPT_HOME/common.env WORK_DIR="/mot/systems/scripts/" #WORK_DIR="/mot/b36376/myscripts/nis_user_automation"... (1 Reply)
Discussion started by: ajaincv
1 Replies

4. Shell Programming and Scripting

What is issue with this script?

#!/bin/ksh i=1 while do j=0 while do echo "$i" j =`expr $j + 1` done i=`expr $i + 1` done (19 Replies)
Discussion started by: targetshell
19 Replies

5. Shell Programming and Scripting

Script issue

Hi Folks, I am going through a sample script which is not working. Also i want to understand the certain syntaxes #!/bin/sh clear x="y" echo "enter ur 1st no." read n1 echo "enter ur 2nd no." read n2 while do clear echo "1.sum" echo "2.subtraction" echo "3.product"... (3 Replies)
Discussion started by: rafa_fed2
3 Replies

6. Shell Programming and Scripting

Issue with script

Hi, I have a script which when i run in manually it runs properly, but when i run the same script using UC4 scheduler it dose not run properly. Below is the code i am using. i am not sure what is happening when i run this through UC4 the files are not generated. but when i run this manually it... (1 Reply)
Discussion started by: Mohammed_Tabish
1 Replies

7. Shell Programming and Scripting

Issue with the script

I am trying to run a script which ftp the files from one server to another. Below is the script - #!/bin/bash echo "Please enter no : " read variable echo "You entered: $input_variable" host=xxxxx USER=xxx PASSWORD=xxx ftp -inv $HOST <<EOF user $USER $PASSWORD cd... (4 Replies)
Discussion started by: chandraprakash
4 Replies

8. Shell Programming and Scripting

Issue in Script

I developed a script to group by 1st column and sum few of the column which are required, but while executing sum of 2nd column which has decimals in place is not getting correct sum. below is the script awk -F, '{a+=$2;b+=$33;c+=$58;d+=$11;e+=$50;}END{for(i in a)printf... (2 Replies)
Discussion started by: rramkrishnas
2 Replies

9. Shell Programming and Scripting

Issue with script

Hi, I am running below script using autosys. Though the script is running fine, it fails the workflow but the autosys job shows success. Can you please let me know where can i make change to script:- #!/bin/ksh #to test mail from directory set -x frequency=$1 param_file=/local/test... (4 Replies)
Discussion started by: rajrishi990
4 Replies

10. Shell Programming and Scripting

Issue with pwd for script run by double click on script (MacOS High SIerra)

Hello, I have the following script that just archives and clears some log files. #!/bin/bash # script: archive_logs_and_clear # add date to logfile names and copy archive directory # clear logs # change to script directory cd ... (4 Replies)
Discussion started by: LMHmedchem
4 Replies
Locale::Currency(3perl) 				 Perl Programmers Reference Guide				   Locale::Currency(3perl)

NAME
Locale::Currency - standard codes for currency identification SYNOPSIS
use Locale::Currency; $curr = code2currency('usd'); # $curr gets 'US Dollar' $code = currency2code('Euro'); # $code gets 'eur' @codes = all_currency_codes(); @names = all_currency_names(); DESCRIPTION
The "Locale::Currency" module provides access to standard codes used for identifying currencies and funds, such as those defined in ISO 4217. Most of the routines take an optional additional argument which specifies the code set to use. If not specified, the default ISO 4217 three-letter codes will be used. SUPPORTED CODE SETS
There are several different code sets you can use for identifying currencies. The ones currently supported are: alpha This is a set of three-letter (uppercase) codes from ISO 4217 such as EUR for Euro. Two of the codes specified by the standard (XTS which is reserved for testing purposes and XXX which is for transactions where no currency is involved) are omitted. This code set is identified with the symbol "LOCALE_CURR_ALPHA". This is the default code set. num This is the set of three-digit numeric codes from ISO 4217. This code set is identified with the symbol "LOCALE_CURR_NUMERIC". ROUTINES
code2currency ( CODE [,CODESET] ) currency2code ( NAME [,CODESET] ) currency_code2code ( CODE ,CODESET ,CODESET2 ) all_currency_codes ( [CODESET] ) all_currency_names ( [CODESET] ) Locale::Currency::rename_currency ( CODE ,NEW_NAME [,CODESET] ) Locale::Currency::add_currency ( CODE ,NAME [,CODESET] ) Locale::Currency::delete_currency ( CODE [,CODESET] ) Locale::Currency::add_currency_alias ( NAME ,NEW_NAME ) Locale::Currency::delete_currency_alias ( NAME ) Locale::Currency::rename_currency_code ( CODE ,NEW_CODE [,CODESET] ) Locale::Currency::add_currency_code_alias ( CODE ,NEW_CODE [,CODESET] ) Locale::Currency::delete_currency_code_alias ( CODE [,CODESET] ) These routines are all documented in the Locale::Codes man page. SEE ALSO
Locale::Codes Locale::Constants http://www.iso.org/iso/support/currency_codes_list-1.htm The ISO 4217 data. AUTHOR
See Locale::Codes for full author history. Currently maintained by Sullivan Beck (sbeck@cpan.org). COPYRIGHT
Copyright (c) 1997-2001 Canon Research Centre Europe (CRE). Copyright (c) 2001 Michael Hennecke Copyright (c) 2001-2010 Neil Bowers Copyright (c) 2010-2011 Sullivan Beck This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.14.2 2011-09-26 Locale::Currency(3perl)
All times are GMT -4. The time now is 01:02 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy