Sponsored Content
Top Forums Shell Programming and Scripting How to print error and exit if command fails? Post 302309913 by lavascript on Thursday 23rd of April 2009 08:22:20 AM
Old 04-23-2009
How to print error and exit if command fails?

Guys any tips on printing a certain error message to stderr and exiting should a command fail within a ksh script? I'm trying to null some output files.

Touch isn't suitable as i need to null them.
print "" > file isn't suitable as i need to check elsehere for if they are 0bytes or not.

I've tried these below examples and none work correctly. I don't want to have to put a check after each command as :-

Code:
if [[ $? -ne 0 ]];then
   print "error blah blah" >&2
   exit 2
fi

Below tests don't work correctly. I'm guessing its spawning something.

Code:
OUTFILE=/tmp/out

# Null outfiles. Security already checked

> ${OUTFILE} || print "ERROR: blah blah \n" >&2 ; exit 2   #doesnt work

> ${OUTFILE} || (print "ERROR: blah blah \n" >&2 ; exit 2 )  #doesn't work

> ${OUTFILE} || (print "ERROR: blah blah \n" >&2 && exit 2) #doesnt work

if [[ -n "$(> ${OUTFILE} 2>&1)" ]];then
     print "ERROR: blah blah \n" >&2
     exit 2
fi    # doesnt work

Any ideas or alternatives?
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Print Error with set command

I need to print some mandatory instructions if something fails in the script. I am using set -e to check and exit the script if some scripts/commands return non zero exit code. Is there any way to print these instructions with set command?? (0 Replies)
Discussion started by: Shribigb
0 Replies

2. Shell Programming and Scripting

How to capture actual error message when a command fails to execute

I want to capture actual error message in case the commands I use in my shell script fails. For eg: ls -l abc.txt 2>>errorlog.txt In this case I understand the error message is written to the errorlog.txt and I assume its bacause the return code from the command ls -l abc might return 2 if... (3 Replies)
Discussion started by: prathima
3 Replies

3. Shell Programming and Scripting

How to print exit status in AWK

Hi all, How can I print the exit status in AWK? echo $? doesnt work for me Thanks (4 Replies)
Discussion started by: Pauline mugisha
4 Replies

4. Shell Programming and Scripting

Linux:Program exit with displaying a print feature

hi All I have a scritp running which connects to a local host and then gets a value from a field and then ftp that value to antoher server. It is running fine, and from crontab it gives the output to a file, the problem is sometime it doesnt run but if i check the output file it does not show one... (0 Replies)
Discussion started by: imran721
0 Replies

5. Shell Programming and Scripting

Need help! command working ok when executed in command line, but fails when run inside a script!

Hi everyone, when executing this command in unix: echo "WM7 Fatal Alerts:", $(cat query1.txt) > a.csvIt works fine, but running this command in a shell script gives an error saying that there's a syntax error. here is content of my script: tdbsrvr$ vi hc.sh "hc.sh" 22 lines, 509... (4 Replies)
Discussion started by: 4dirk1
4 Replies

6. UNIX for Advanced & Expert Users

Equivalents of tee command to find exit status of command

Hi, Want to log the output of command & check the exit status to find whether it succeeded or failed. > ls abc ls: abc: No such file or directory > echo $? 1 > ls abc 2>&1 | tee log ls: abc: No such file or directory > echo $? 0 Tee commands changes my exit status to be always... (7 Replies)
Discussion started by: vibhor_agarwali
7 Replies

7. Shell Programming and Scripting

SH script, variable built command fails, but works at command line

I am working with a sh script on a solaris 9 zone (sol 10 host) that grabs information to build the configuration command line. the variables Build64, SSLopt, CONFIGopt, and CC are populated in the script. the script includes CC=`which gcc` CONFIGopt=' --prefix=/ --exec-prefix=/usr... (8 Replies)
Discussion started by: oly_r
8 Replies

8. Shell Programming and Scripting

Script to check one command and if it fails moves to other command

Input is list of Server's, script is basically to remove old_rootvg, So it should check first command "alt_rootvg_op -X old_rootvg" if it passes move to next server and starts check and if it fails moves to other command "exportvg old_rootvg" for only that particular server. I came up with below,... (6 Replies)
Discussion started by: aix_admin_007
6 Replies

9. Shell Programming and Scripting

How to exit from shell script if above condition fails?

HI cd ${back_home} if above back_home does not exist, then script shoul exit. Please let us know how to do that (7 Replies)
Discussion started by: buzzme
7 Replies

10. UNIX for Beginners Questions & Answers

Linux shell | how to exit a script if any command fails.

Hi, i am new here let me say HI for all. now i have a question please: i am sending one command to my machine to create 3 names. if one of the names exists then the box return error message that already have the name but will continue to create the rests. How i can break the command and... (7 Replies)
Discussion started by: Amiri
7 Replies
CountryCode(3pm)					User Contributed Perl Documentation					  CountryCode(3pm)

NAME
NCC::CountryCode - Perl extension for blah blah blah SYNOPSIS
use NCC::CountryCode; my $cc = new NCC::CountryCode(); my $cc_hash = $cc->getCCs(); print ($cc->isCC('NL')) ? "exists" : "non-existing"; $cc->CC2Country('fr'); $cc->Country2CC('russia'); DESCRIPTION
This module provides class and several methods to simplify mapping between country names and country codes, as they assigned in the ISO3166. The CC2Country() method maps country code to the corresponding country name or empty string, if it doesn't exist. The Country2CC() tries to map passed country name into country code. As the spelling of the name may vary, this function tries to find all possible matches for passed name. In array context method returns hash of country codes and names, in scalar - a string, containing all possible country codes and corresponding country names. The isCC() method verifies, that passed country code is a legal one and returns it in upper case. Otherwise it returns empty string. The getCCs() method returns the reference to the internal hash, that containes all the country codes with corresponding them country names. BUGS
In addition to the country codes defined by ISO3166 standart this module also introduce 'UK' as a synonim for 'GB' and 'EU' as additional 'virtual' name for the Europe itself. AUTHOR
Timur Bakeyev, timur@ripe.net SEE ALSO
perl(1). perl v5.10.1 2001-09-10 CountryCode(3pm)
All times are GMT -4. The time now is 12:42 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy