Sponsored Content
Top Forums Shell Programming and Scripting Custom exit message according to flag Post 303045142 by da1 on Thursday 12th of March 2020 02:17:13 PM
Old 03-12-2020
hmm, very interesting construct. thank you for that.

One question though regarding the following piece of code:
Code:
[[ 0 = $ret ]] && \
	exit_msg="SUCCESS - $exit_msg" || \
	exit_msg="FAILURE - $exit_msg"

Why not do a proper if/else statement here?

Quote:
First and foremost, both "${2:-}" are useless, as that would fill an empty variable with... emptyness.
I did that because of the "set -u". What would be the right approach?

Quote:
Second, you dont want something in a variable that defines an extra option - if it hasnt been set by the user.
Ok, can you elabortate on that? Why is it wrong (?) to append a string to a variable?
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Where can I find a list of exit codes? (Exit code 64)

I'm receiving an exit code 64 in our batch scheduler (BMC product control-m) executing a PERL script on UX-HP. Can you tell me where I can find a list of exit codes and their meaning. I'm assuming the exit code is from the Unix operating system not PERL. (3 Replies)
Discussion started by: jkuchar747
3 Replies

2. Shell Programming and Scripting

cant get the right exit message

#!/bin/ksh application task run command //returns 0 if successful if ; then echo "Ran Fine" else echo "Didnt run" fi When I run the script, here is the output Status code = 0 ksh: [0: not found. Job didnt run any suggestions? (4 Replies)
Discussion started by: bryan
4 Replies

3. Programming

How to limit max no of message in a posix message queue

Hii can anyone pls tell how to limit the max no of message in a posix message queue. I have made changes in proc/sys/fs/mqueue/msg_max But still whenever i try to read the value of max. message in the queue using attr.mq_curmsgs (where struct mq_attr attr) its giving the default value as 10.... (0 Replies)
Discussion started by: mohit3884
0 Replies

4. AIX

du flag -x

Hi, I would like to know if there's any option to use with the du command so that I can list only the files/directories on the current filesystem... I usually use du -gs *But I'd like to see only the directories in the filesystem I am on, and not the mount point directory of other fss... ... (6 Replies)
Discussion started by: Casey
6 Replies

5. Shell Programming and Scripting

Printing all lines before a specific string and a custom message 2 lines after

Hello all, I need to print all the lines before a specific string and print a custom message 2 lines after that. So far I have managed to print everything up the string, inclusively, but I can't figure out how to print the 2 lines after that and the custom message. My code thus far is:... (4 Replies)
Discussion started by: SEinT
4 Replies

6. UNIX for Dummies Questions & Answers

'h' flag in du

Hey, all! Why is the "human readable" flag changing the behavior of du? And while I'm at it, can you make du only look at files, not directories. I often find myself wanting to find the largest file(s) in a dir or vol. Using 'find' itself, it seems you have to at least be able to guess the size of... (2 Replies)
Discussion started by: sudon't
2 Replies

7. Shell Programming and Scripting

Need the difference between exit 1 & exit 7

Hi In one of the script I am seeing some thing like exit 7,exit 1,exit 2,exit 3,exit 9,exit6.What is the difference between all of this exit.Can anyone help here please (3 Replies)
Discussion started by: ginrkf
3 Replies

8. UNIX for Dummies Questions & Answers

Get the id with specify flag

.... means multi line ddd,bug fgdrg dfdfsdfdfsd fsdfdfdfd fdfdsfdsfsd ....... flag2 ...... aaa,bug sfsfsfsfs dfdfsdfdfsd fsdfdfdfd fdfdsfdsfsd ...... flag1 ...... ddd,bug fgdrg dfdfsdfdfsd (9 Replies)
Discussion started by: yanglei_fage
9 Replies

9. Shell Programming and Scripting

awk to supress error message with custom text

After a bash function is run the below file is produced: out_name.txt tab-delimeted Input Errors and warnings AccNo Genesymbol Variant Reference Sequence Start Descr. Coding DNA Descr. Protein Descr. GeneSymbol Coding DNA Descr. GeneSymbol Protein Descr. Genomic... (3 Replies)
Discussion started by: cmccabe
3 Replies

10. IP Networking

Insmod custom module fails with message : disagrees about version of symbol ...

Hello : I want to make a netfilter conntrack module for myself. So I copy all the source code about netfilter conntrack from kernel source tree to my external directory. It can be insmod after compiled. Then I add some members to the struct nf_conn, and it 's compiled successfully. However, it... (1 Reply)
Discussion started by: 915086731
1 Replies
RRDCGI(1)							      rrdtool								 RRDCGI(1)

NAME
rrdcgi - Create web pages containing RRD graphs based on templates SYNOPSIS
"#!/path/to/"rrdcgi [--filter] DESCRIPTION
rrdcgi is a sort of very limited script interpreter. Its purpose is to run as a cgi-program and parse a web page template containing special <RRD:: tags. rrdcgi will interpret and act according to these tags. In the end it will printout a web page including the necessary CGI headers. rrdcgi parses the contents of the template in 3 steps. In each step it looks only for a subset of tags. This allows nesting of tags. The argument parser uses the same semantics as you are used from your C-shell. --filter Assume that rrdcgi is run as a filter and not as a cgi. Keywords RRD::CV name Inserts the CGI variable of the given name. RRD::CV::QUOTE name Inserts the CGI variable of the given name but quotes it, ready for use as an argument in another RRD:: tag. So even when there are spaces in the value of the CGI variable it will still be considered to be one argument. RRD::CV::PATH name Inserts the CGI variable of the given name, quotes it and makes sure it starts neither with a '/' nor contains '..'. This is to make sure that no problematic pathnames can be introduced through the CGI interface. RRD::GETENV variable Get the value of an environment variable. <RRD::GETENV REMOTE_USER> might give you the name of the remote user given you are using some sort of access control on the directory. RRD::GOODFOR seconds Specify the number of seconds this page should remain valid. This will prompt the rrdcgi to output a Last-Modified, an Expire and if the number of seconds is negative a Refresh header. RRD::INCLUDE filename Include the contents of the specified file into the page returned from the cgi. RRD::SETENV variable value If you want to present your graphs in another time zone than your own, you could use <RRD::SETENV TZ UTC> to make sure everything is presented in Universal Time. Note that the values permitted to TZ depend on your OS. RRD::SETVAR variable value Analog to SETENV but for local variables. RRD::GETVAR variable Analog to GETENV but for local variables. RRD::TIME::LAST rrd-file strftime-format This gets replaced by the last modification time of the selected RRD. The time is strftime-formatted with the string specified in the second argument. RRD::TIME::NOW strftime-format This gets replaced by the current time of day. The time is strftime-formatted with the string specified in the argument. Note that if you return : (colons) from your strftime format you may have to escape them using if the time is to be used as an argument to a GRAPH command. RRD::TIME::STRFTIME START|END start-spec end-spec strftime-format This gets replaced by a strftime-formatted time using the format strftime-format on either start-spec or end-spec depending on whether START or END is specified. Both start-spec and end-spec must be supplied as either could be relative to the other. This is intended to allow pretty titles on graphs with times that are easier for non RRDtool folks to figure out than "-2weeks". Note that again, if you return : (colon) from your strftime format, you may have to escape them using if the time is to be used as an argument to a GRAPH command. RRD::GRAPH rrdgraph arguments This tag creates the RRD graph defined by its argument and then is replaced by an appropriate <IMG ... > tag referring to the graph. The --lazy option in RRD graph can be used to make sure that graphs are only regenerated when they are out of date. The arguments to the RRD::GRAPH tag work as described in the rrdgraph manual page. Use the --lazy option in your RRD::GRAPH tags, to reduce the load on your server. This option makes sure that graphs are only regenerated when the old ones are out of date. If you do not specify your own --imginfo format, the following will be used: <IMG SRC="%s" WIDTH="%lu" HEIGHT="%lu"> Note that %s stands for the filename part of the graph generated, all directories given in the PNG file argument will get dropped. RRD::PRINT number If the preceding RRD::GRAPH tag contained and PRINT arguments, then you can access their output with this tag. The number argument refers to the number of the PRINT argument. This first PRINT has number 0. RRD::INTERNAL <var> This tag gets replaced by an internal var. Currently these vars are known: VERSION, COMPILETIME. These vars represent the compiled-in values. EXAMPLE 1 The example below creates a web pages with a single RRD graph. #!/usr/local/bin/rrdcgi <HTML> <HEAD><TITLE>RRDCGI Demo</TITLE></HEAD> <BODY> <H1>RRDCGI Example Page</H1> <P> <RRD::GRAPH demo.png --lazy --title="Temperatures" DEF:cel=demo.rrd:exhaust:AVERAGE LINE2:cel#00a000:"D. Celsius"> </P> </BODY> </HTML> EXAMPLE 2 This script is slightly more elaborate, it allows you to run it from a form which sets RRD_NAME. RRD_NAME is then used to select which RRD you want to use as source for your graph. #!/usr/local/bin/rrdcgi <HTML> <HEAD><TITLE>RRDCGI Demo</TITLE></HEAD> <BODY> <H1>RRDCGI Example Page for <RRD::CV RRD_NAME></H1> <H2>Selection</H2> <FORM><INPUT NAME=RRD_NAME TYPE=RADIO VALUE=roomA> Room A, <INPUT NAME=RRD_NAME TYPE=RADIO VALUE=roomB> Room B. <INPUT TYPE=SUBMIT></FORM> <H2>Graph</H2> <P> <RRD::GRAPH <RRD::CV::PATH RRD_NAME>.png --lazy --title "Temperatures for "<RRD::CV::QUOTE RRD_NAME> DEF:cel=<RRD::CV::PATH RRD_NAME>.rrd:exhaust:AVERAGE LINE2:cel#00a000:"D. Celsius"> </P> </BODY> </HTML> EXAMPLE 3 This example shows how to handle the case where the RRD, graphs and cgi-bins are separate directories #!/.../bin/rrdcgi <HTML> <HEAD><TITLE>RRDCGI Demo</TITLE></HEAD> <BODY> <H1>RRDCGI test Page</H1> <RRD::GRAPH /.../web/pngs/testhvt.png --imginfo '<IMG SRC=/.../pngs/%s WIDTH=%lu HEIGHT=%lu >' --lazy --start -1d --end now DEF:http_src=/.../rrds/test.rrd:http_src:AVERAGE AREA:http_src#00ff00:http_src > </BODY> </HTML> Note 1: Replace /.../ with the relevant directories Note 2: The SRC=/.../pngs should be paths from the view of the webserver/browser AUTHOR
Tobias Oetiker <tobi@oetiker.ch> 1.4.8 2013-05-23 RRDCGI(1)
All times are GMT -4. The time now is 12:20 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy