01-21-2010
plz explain the execution flow
CODE
HTML Code:
file=/tmp/rap54ibs2sap.txt
trap "rm $file; exit" 0 1 2 3 15
trap
rm $file
execution result
HTML Code:
trap -- 'rm /tmp/rap54ibs2sap.txt; exit' EXIT
trap -- 'rm /tmp/rap54ibs2sap.txt; exit' SIGHUP
trap -- 'rm /tmp/rap54ibs2sap.txt; exit' SIGINT
trap -- 'rm /tmp/rap54ibs2sap.txt; exit' SIGQUIT
trap -- 'rm /tmp/rap54ibs2sap.txt; exit' SIGTERM
rm: cannot remove `/tmp/rap54ibs2sap.txt': No such file or directory
rm: cannot remove `/tmp/rap54ibs2sap.txt': No such file or directory
if the file doesnot exist then trap will capture the SIGINT and execute
"rm $file; exit" which again will try the same operation and again will capture the SIGINT and again insteed of executing "rm $file; exit" and repaet it again and again, why it executes the exit (status must be 0 n signal EXIT) and comes out of the whole statement.
(It should have executed the very statement as again it traps a valid catch)
Plz explain...........
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
i.e configuration of C compiler :confused: (4 Replies)
Discussion started by: atiato
4 Replies
2. Programming
Any One help how to draw the flow chart for C programe ?
If any usefull link's. (1 Reply)
Discussion started by: sabari
1 Replies
3. UNIX for Advanced & Expert Users
HI,
Can anyone explain to me how does the following command work - >
current_dir=`cd \`/usr/bin/dirname $0\` && pwd`
Regards,
Ranga (3 Replies)
Discussion started by: r_W213
3 Replies
4. UNIX for Dummies Questions & Answers
echo -n "1. Updating Password Policy in OID..." | tee -a $logfile
set ldap_v1 = `ldapsearch -b "" -h $oid_host -p $oid_port -D "cn=orcladmin" -w $admin_pwd -s sub "cn=PwdPolicyEntry" dn | head -1`
echo "dn:$ldap_v1" > ldap1.out
echo "changetype:modify" >> ldap1.out
echo... (2 Replies)
Discussion started by: maoro
2 Replies
5. Shell Programming and Scripting
hi all
i wrote a shell script which uses perl script my code is :
>cat filename | while read i
>do
>perl -e 'require "/home/scripts/abc.pl" ; abc("$i")'
>done
perl script used will simply check syntax of Cobol programs but it didn't work for me so i asked my colleague he suggested... (1 Reply)
Discussion started by: zedex
1 Replies
6. Shell Programming and Scripting
can u explain this step by step........plz...will it do the same
for I in *.tar.gz; do
A=`basename $I .tar.gz`
mkdir $A
cp marking-guide ${A}/$A
cd $A
gunzip -c ../$I | tar xf -
cd..
done
thnx
__________________ (2 Replies)
Discussion started by: avikal
2 Replies
7. Shell Programming and Scripting
Hi frnds,
one my frnds has given resolution for my problem as below. it working great , but i couldnt understand somethings in the script.
Why ++ operator after the function calling. how these each block working. will each run for each input line sequencially or one block for all the lines... (9 Replies)
Discussion started by: Gopal_Engg
9 Replies
8. Shell Programming and Scripting
I have an expect script that interrogates several hundred unix servers for both access and directories therein using "ssh user@host ls -l /path". The combination of host/path are unique but the host may be interrogated multiple times if there are multiple paths to test.
The expect script is run... (2 Replies)
Discussion started by: twk
2 Replies
9. Shell Programming and Scripting
Hi Unix Gurus,
Please explain the processing done by the code mentioned below:
for (i=1;i<=59;i++)
{
sub(/ *$/,"", $i)
}
newrec_key = $2
new_line = $0
if (empty_oldfile==1)
{
#newly added record
++num_add
print "Added key: ", newrec_key > LogFile
#print out... (4 Replies)
Discussion started by: ustechie
4 Replies
10. Shell Programming and Scripting
B()
{
}
A()
{
calling a function B
}
for condition
do
calling a function A
done
Shall after executing function B, the control will return back to loop?
Thanks in advance :) (2 Replies)
Discussion started by: ezee
2 Replies
trap(1) User Commands trap(1)
NAME
trap, onintr - shell built-in functions to respond to (hardware) signals
SYNOPSIS
sh
trap [ argument n [n2...]]
csh
onintr [-| label]
ksh
*trap [ arg sig [ sig2...]]
DESCRIPTION
sh
The trap command argument is to be read and executed when the shell receives numeric or symbolic signal(s) (n). (Note: argument is scanned
once when the trap is set and once when the trap is taken.) Trap commands are executed in order of signal number or corresponding symbolic
names. Any attempt to set a trap on a signal that was ignored on entry to the current shell is ineffective. An attempt to trap on signal 11
(memory fault) produces an error. If argument is absent all trap(s) n are reset to their original values. If argument is the null string
this signal is ignored by the shell and by the commands it invokes. If n is 0 the command argument is executed on exit from the shell. The
trap command with no arguments prints a list of commands associated with each signal number.
csh
onintr controls the action of the shell on interrupts. With no arguments, onintr restores the default action of the shell on interrupts.
(The shell terminates shell scripts and returns to the terminal command input level). With the - argument, the shell ignores all inter-
rupts. With a label argument, the shell executes a goto label when an interrupt is received or a child process terminates because it was
interrupted.
ksh
trap uses arg as a command to be read and executed when the shell receives signal(s) sig. (Note that arg is scanned once when the trap is
set and once when the trap is taken.) Each sig can be given as a number or as the name of the signal. trap commands are executed in order
of signal number. Any attempt to set a trap on a signal that was ignored on entry to the current shell is ineffective. If arg is omitted
or is -, then the trap(s) for each sig are reset to their original values. If arg is the null (the empty string, e.g., "" ) string then
this signal is ignored by the shell and by the commands it invokes. If sig is ERR then arg will be executed whenever a command has a non-
zero exit status. If sig is DEBUG then arg will be executed after each command. If sig is 0 or EXIT for a trap set outside any function
then the command arg is executed on exit from the shell. The trap command with no arguments prints a list of commands associated with each
signal number.
On this man page, ksh(1) commands that are preceded by one or two * (asterisks) are treated specially in the following ways:
1. Variable assignment lists preceding the command remain in effect when the command completes.
2. I/O redirections are processed after variable assignments.
3. Errors cause a script that contains them to abort.
4. Words, following a command preceded by ** that are in the format of a variable assignment, are expanded with the same rules as a vari-
able assignment. This means that tilde substitution is performed after the = sign and word splitting and file name generation are not
performed.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWcsu |
+-----------------------------+-----------------------------+
SEE ALSO
csh(1), exit(1), ksh(1), sh(1), attributes(5)
SunOS 5.10 23 Oct 1994 trap(1)