Sponsored Content
Full Discussion: Source Output
Top Forums UNIX for Advanced & Expert Users Source Output Post 302713525 by Don Cragun on Wednesday 10th of October 2012 11:52:31 PM
Old 10-11-2012
Quote:
Originally Posted by bakunin
First off, if you write to temporary files you should always prepare a place for these first and clean this place upon exit. Usually you can use the PID variable to make the places name unique, because the PID is always unique. I do it usually the following way (sketch only):

Code:
#! /bin/ksh

trap 'rm -rf "$TMPDIR" 1>/dev/null 2>/dev/null' 0

 ... ... ...

exit 0

This way each instance of a script gets its own temp dir, puts everything it uses in there and upon exit (regardless which exit, even when terminated from outisde) it cleans up. The only way to have the temp files not cleaned is to terminate it with a "kill -9".

I hope this helps.

bakunin
This is a great example of defensive programming, but the commands in trap 'commands' 0 will only be executed on a normal exit of the program. If the program is terminated by any signal (such as SIGINT or SIGQUIT which can easily be generated from the keyboard while a script is running interactively), the commands in this trap will not be executed.

If you wanted to perform the cleanup on exit and on termination by the signals SIGHUP, SIGINT, SIGQUIT, and SIGTERM you could use:
Code:
trap 'rm -rf "$TMPDIR" 1>/dev/null 2>/dev/null' EXIT HUP INT QUIT TERM

on systems that support the latest POSIX standard requirements. On UNIX branded systems, this would be equivalent to:
Code:
trap 'rm -rf "$TMPDIR" 1>/dev/null 2>/dev/null' 0 1 2 3 15

If you aren't using a UNIX branded implementation, the signal numbers listed above might not work on your system. The signal numbers used on your system should appear a file like /usr/include/signal.h or in some file it #includes. (There may be variant directories on your system corresponding to different versions of the standards and other ABI or API specifications your system supports.)
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

how to make a line BLINKING in output and also how to increase font size in output

how to make a line BLINKING in output and also how to increase font size in output suppose in run a.sh script inside echo "hello world " i want that this should blink in the output and also the font size of hello world should be big .. could you please help me out in this (3 Replies)
Discussion started by: mail2sant
3 Replies

2. Shell Programming and Scripting

write page source to standard output

I'm new to PERL, but I want to take the page source and write it to a file or standard output. I used perl.org as a test website. Here is the script: use strict; use warnings; use LWP::Simple; getprint('http://www.perl.org') or die 'Unable to get page'; exit 0; ... (1 Reply)
Discussion started by: wxornot
1 Replies

3. UNIX for Dummies Questions & Answers

Read rows from source file and concatenate output

Hi guys; TBH I am an absolute novice, when it comes to scripting; I do have an idea of the basic commands... Here is my problem; I have a flatfile 'A' containing a single column with multiple rows. I have to create a script which will use 'A' as input and then output a string in in the... (0 Replies)
Discussion started by: carlos_anubis
0 Replies

4. Shell Programming and Scripting

Awk script to run a sql and print the output to an output file

Hi All, I have around 900 Select Sql's which I would like to run in an awk script and print the output of those sql's in an txt file. Can you anyone pls let me know how do I do it and execute the awk script? Thanks. (4 Replies)
Discussion started by: adept
4 Replies

5. Shell Programming and Scripting

Redirect output to a different text file depending source of data

I have a list of DNS servers I need to look up information on. Each of these servers has a master and a slave database. Essentially what I need to do is create two text files for each server. One with the Master view and one with the Slave view. There's 20 servers, in the end I should have 40 text... (4 Replies)
Discussion started by: spartan22
4 Replies

6. Shell Programming and Scripting

script to mail monitoring output if required or redirect output to log file

Below script perfectly works, giving below mail output. BUT, I want to make the script mail only if there are any D-Defined/T-Transition/B-Broken State WPARs and also to copy the output generated during monitoring to a temporary log file, which gets cleaned up every week. Need suggestions. ... (4 Replies)
Discussion started by: aix_admin_007
4 Replies

7. Shell Programming and Scripting

Displaying log file pattern output in tabular form output

Hi All, I have result log file which looks like this (below): from the content need to consolidate the result and put it in tabular form 1). Intercomponents Checking Passed: All Server are passed. ====================================================================== 2). OS version Checking... (9 Replies)
Discussion started by: Optimus81
9 Replies

8. Red Hat

Command understanding the output file destination in case of standard output!!!!!

I ran the following command. cat abc.c > abc.c I got message the following message from command cat: cat: abc.c : input file is same as the output file How the command came to know of the destination file name as the command is sending output to standard file. (3 Replies)
Discussion started by: ravisingh
3 Replies

9. Shell Programming and Scripting

Add source file name to file output

OS: Linux kernel ver: 2.6x shell: Korn(ksh) hi. We are required to read contents for mutliple GZIP(.gz) files and perform some custom sanity checks downstream, example of such a check can a validation for the length of each record. We should accepts records which are 320 chars long and... (1 Reply)
Discussion started by: kumarjt
1 Replies
RBASH(1)						      General Commands Manual							  RBASH(1)

NAME
rbash - restricted bash, see bash(1) RESTRICTED SHELL
If bash is started with the name rbash, or the -r option is supplied at invocation, the shell becomes restricted. A restricted shell is used to set up an environment more controlled than the standard shell. It behaves identically to bash with the exception that the follow- ing are disallowed or not performed: o changing directories with cd o setting or unsetting the values of SHELL, PATH, ENV, or BASH_ENV o specifying command names containing / o specifying a file name containing a / as an argument to the . builtin command o specifying a filename containing a slash as an argument to the -p option to the hash builtin command o importing function definitions from the shell environment at startup o parsing the value of SHELLOPTS from the shell environment at startup o redirecting output using the >, >|, <>, >&, &>, and >> redirection operators o using the exec builtin command to replace the shell with another command o adding or deleting builtin commands with the -f and -d options to the enable builtin command o using the enable builtin command to enable disabled shell builtins o specifying the -p option to the command builtin command o turning off restricted mode with set +r or set +o restricted. These restrictions are enforced after any startup files are read. When a command that is found to be a shell script is executed, rbash turns off any restrictions in the shell spawned to execute the script. SEE ALSO
bash(1) GNU Bash-4.0 2004 Apr 20 RBASH(1)
All times are GMT -4. The time now is 11:29 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy