Sponsored Content
Full Discussion: Source Output
Top Forums UNIX for Advanced & Expert Users Source Output Post 302713185 by bakunin on Wednesday 10th of October 2012 10:48:22 AM
Old 10-10-2012
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

PROGNAME="$(basename $0)"
TMPDIR="/tmp/${PROGNAME}_$$"

fTmp1="${TMPDIR}/somefile"
fTmp2="${TMPDIR}/otherfile"

mkdir "$TMPDIR" || {
     print -u2 "ERROR: cannot create $TMPDIR, exiting."
     exit 2
}

... code ...

cmd > "$fTmp1"

while read line ; do
     ....
done < "$fTmp2"

.... code ....

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
 

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
mktemp(1)						      General Commands Manual							 mktemp(1)

Name
       mktemp - make a name for a temporary file

Syntax
       mktemp [ -c ] [ -d directory_name ] [ -p prefix ]

Description
       The  command makes a name for the pathname of a temporary file and writes that name to standard output. The name will not duplicate that of
       an existing file. The command does not create a new file. The file named must actually be created before can generate a new filename.

       Subsequent calls to will only generate a new file name if all previously generated file names have been	created  by  the  user	and  still
       exist.  Error messages are written to standard error.

       The  directory_name generated by is the concatenation of a directory name, a slash (/), a file prefix, a dot (.), a four digit number and a
       unique character.

       The directory name is chosen as follows:

	  (1)  If the -d option is specified, directory_name is used.

	  (2)  Otherwise, if the TMPDIR environment variable is set and a string that would yield a unique name can be obtained using the value of
	       that variable as a directory name, this value is used.

	  (3)  Otherwise, is used.

       The prefix is chosen as follows:

	  (1)  If the -p option is specified, prefix is used.

	  (2)  Otherwise, if the LOGNAME environment variable is set, it is used as the prefix.

	  (3)  Otherwise, the user's login name is used.

Options
       -c	   Causes to attempt to create a regular file using the generated (or created) name string. If file creation is successful, a zero
		   length file is created with access permissions derived from the process's file mode creation mask, see No attempt  is  made	to
		   create  a file if the length of the generated (or created) name string exceeds 1023 characters. It is the user's responsibility
		   to remove files created by use of this option.

       -d directory_name
		   Causes directory_name to be used as the directory portion of the pathname. In this case,  directory_name  is  used  instead	of
		   TMPDIR and

       -p prefix   Causes  the string prefix to be used as the file's prefix.  It is used instead of LOGNAM and the user's login name. If the pre-
		   fix is longer the 249 characters, it will be silently truncated to that length before the concatenation of the suffix.

Environmental Variables
       LOGNAME	   When the -p prefix option is not specified, the value of this variable is used as the prefix of the filename, if it exists.

       TMPDIR	   When the -d directory_name option is not specified, the value of this variable is used instead of

Restrictions
       If the user does not have write permission in the directory specified, and error message is reported and is used in its place.  The  entire
       path name can not exceed 1023 characters, and the temporary file name can not exceed 255 characters. If the generated file name is too long
       it is truncated to fit before the suffix is added.

See Also
																	 mktemp(1)
All times are GMT -4. The time now is 08:52 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy