help on script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting help on script
# 15  
Old 09-11-2008
CREATE SET TABLE apparently isn't at beginning of line (that's the meaning of ^) or you have erratic spacing. Both of these can be corrected, but we can't tell from the data you posted. (It could help if you used code tags when posting your samples.)
# 16  
Old 09-11-2008

You are checking for:
Standardized_Ind
Table_Name
New_Cd
instead of
Standardized_Ind
New_Cd
Table_Name
# 17  
Old 09-12-2008
Hi cfajohnson
Still I am getting error (when check for following sequence)
Standardized_Ind
New_Cd
Table_Name


Code:
FILE=$1
awk -F " " ' /^CREATE SET TABLE/ { tablename = $4 }
 (/^New_Cd/ && last != "Standardized_Ind") || (/^Table_Name/ && last != "^New_Cd" )
 { printf "Error: %s\n", tablename } { last = $1 } ' "$FILE" | uniq

##

I am getting the below error message when calling the above script
ab.sh b.txt
Error: XX
Error: XX1
Error: XX2


b.txt
CREATE SET TABLE XX ,NO FALLBACK ,
NO BEFORE JOURNAL,
NO AFTER JOURNAL,
CHECKSUM = DEFAULT
(
Categ_Cd VARCHAR(10) CHARACTER ,
Categ_Desc VARCHAR(250) ,
Standardized_Ind CHAR(1) ,
New_Cd VARCHAR(20) ,
Table_Name VARCHAR(100) ) ;
CREATE SET TABLE XX1 ,NO FALLBACK ,
NO BEFORE JOURNAL,
NO AFTER JOURNAL,
CHECKSUM = DEFAULT
(
Categ_Cd1 VARCHAR(10) ,
Categ_Desc1 VARCHAR(250) ,
Standardized_Ind CHAR(1) ,
New_Cd VARCHAR(20) ,
Table_Name VARCHAR(100) ) ;
CREATE SET TABLE XX2 ,NO FALLBACK ,
NO BEFORE JOURNAL,
NO AFTER JOURNAL,
CHECKSUM = DEFAULT
(
Financial_Asset_Categ_Cd VARCHAR(10) ,
Financial_Asset_Categ_Desc VARCHAR(250) ,
Standardized_Ind CHAR(1) ,
New_Cd VARCHAR(20) ,
Table_Name VARCHAR(100) );


Thanks,
MR
# 18  
Old 09-12-2008
Quote:
Originally Posted by mohan705
Code:
FILE=$1
awk -F " " ' /^CREATE SET TABLE/ { tablename = $4 }
 (/^New_Cd/ && last != "Standardized_Ind") || (/^Table_Name/ && last != "^New_Cd" )
 { printf "Error: %s\n", tablename } { last = $1 } ' "$FILE" | uniq

##

The action must start on the same line as the pattern:

Code:
FILE=$1
awk -F " " ' /^CREATE SET TABLE/ { tablename = $4 }
 (/^New_Cd/ && last != "Standardized_Ind") ||
 (/^Table_Name/ && last != "^New_Cd" ) { ## Start action here
 printf "Error: %s\n", tablename }
 { last = $1 } ' "$FILE" | uniq

# 19  
Old 09-16-2008
Hi cfajohnson
Quote:
Originally Posted by cfajohnson
Code:
FILE=$1
awk '/^CREATE SET TABLE/ { tablename = $4 }
(/^New_Cd/ && last != "Standardized_Ind") ||
(/^Table_Name/ && last != "^New_Cd" ) { ## Start action here
printf "Error: %s\n", tablename } { last = $1 } ' "$FILE" | uniq



Code:
FILE=$1
awk -F  ' /^CREATE SET TABLE/ { tablename = $4 }
(/^New_Cd/ && last != "Standardized_Ind") ||
(/^Table_Name/ && last != "^New_Cd" )
{ printf "Error: %s\n", tablename } { last = $1 } ' "$FILE" | uniq

##

I am still getting the below error message when calling the above script
ab.sh b.txt
Error: XX
Error: XX1
Error: XX2


b.txt
CREATE SET TABLE XX ,NO FALLBACK ,
NO BEFORE JOURNAL,
NO AFTER JOURNAL,
CHECKSUM = DEFAULT
(
Categ_Cd VARCHAR(10) CHARACTER ,
Categ_Desc VARCHAR(250) ,
Standardized_Ind CHAR(1) ,
New_Cd VARCHAR(20) ,
Table_Name VARCHAR(100) ) ;
CREATE SET TABLE XX1 ,NO FALLBACK ,
NO BEFORE JOURNAL,
NO AFTER JOURNAL,
CHECKSUM = DEFAULT
(
Categ_Cd1 VARCHAR(10) ,
Categ_Desc1 VARCHAR(250) ,
Standardized_Ind CHAR(1) ,
New_Cd VARCHAR(20) ,
Table_Name VARCHAR(100) ) ;
CREATE SET TABLE XX2 ,NO FALLBACK ,
NO BEFORE JOURNAL,
NO AFTER JOURNAL,
CHECKSUM = DEFAULT
(
Financial_Asset_Categ_Cd VARCHAR(10) ,
Financial_Asset_Categ_Desc VARCHAR(250) ,
Standardized_Ind CHAR(1) ,
New_Cd VARCHAR(20) ,
Table_Name VARCHAR(100) );

Thanks,
MR

Last edited by mohan705; 09-16-2008 at 09:41 AM..
# 20  
Old 09-16-2008
sorry I forgot to remove F option
Code:
FILE=$1
awk ' /^CREATE SET TABLE/ { tablename = $4 }
(/^New_Cd/ && last != "Standardized_Ind") ||
(/^Table_Name/ && last != "^New_Cd" )
{ printf "Error: %s\n", tablename } { last = $1 } ' "$FILE" | uniq

Thanks,
MR

Last edited by mohan705; 09-16-2008 at 09:39 AM..
# 21  
Old 09-16-2008
Quote:
Originally Posted by mohan705
sorry I forgot to remove F option
Code:
FILE=$1
awk ' /^CREATE SET TABLE/ { tablename = $4 }
(/^New_Cd/ && last != "Standardized_Ind") ||
(/^Table_Name/ && last != "^New_Cd" )
{ printf "Error: %s\n", tablename } { last = $1 } ' "$FILE" | uniq

Code:
awk ' /^CREATE SET TABLE/ { tablename = $4 }
(/^New_Cd/ && last != "Standardized_Ind") ||
(/^Table_Name/ && last != "^New_Cd" ) {
## the brace must be on the same line as the pattern
 printf "Error: %s\n", tablename }
 { last = $1 } ' "$FILE" | uniq

Login or Register to Ask a Question

Previous Thread | Next Thread

5 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to block first bash script until second bash script script launches web server/site?

I'm new to utilities like socat and netcat and I'm not clear if they will do what I need. I have a "compileDeployStartWebServer.sh" script and a "StartBrowser.sh" script that are started by emacs/elisp at the same time in two different processes. I'm using Cygwin bash on Windows 10. My... (3 Replies)
Discussion started by: siegfried
3 Replies

2. Shell Programming and Scripting

Shell script works fine as a standalone script but not as part of a bigger script

Hello all, I am facing a weird issue while executing a code below - #!/bin/bash cd /wload/baot/home/baotasa0/sandboxes_finance/ext_ukba_bde/pset sh UKBA_publish.sh UKBA 28082015 3 if then echo "Param file conversion for all the areas are completed, please check in your home directory"... (2 Replies)
Discussion started by: ektubbe
2 Replies

3. UNIX for Dummies Questions & Answers

Calling a script from master script to get value from called script

I am trying to call a script(callingscript.sh) from a master script(masterscript.sh) to get string type value from calling script to master script. I have used scripts mentioned below. #masterscript.sh ./callingscript.sh echo $fileExist #callingscript.sh echo "The script is called"... (2 Replies)
Discussion started by: Raj Roy
2 Replies

4. Shell Programming and Scripting

Script will keep checking running status of another script and also restart called script at night

I am using blow script :-- #!/bin/bash FIND=$(ps -elf | grep "snmp_trap.sh" | grep -v grep) #check snmp_trap.sh is running or not if then # echo "process found" exit 0; else echo "process not found" exec /home/Ketan_r /snmp_trap.sh 2>&1 & disown -h ... (1 Reply)
Discussion started by: ketanraut
1 Replies

5. Shell Programming and Scripting

create a shell script that calls another script and and an awk script

Hi guys I have a shell script that executes sql statemets and sends the output to a file.the script takes in parameters executes sql and sends the result to an output file. #!/bin/sh echo " $2 $3 $4 $5 $6 $7 isql -w400 -U$2 -S$5 -P$3 << xxx use $4 go print"**Changes to the table... (0 Replies)
Discussion started by: magikminox
0 Replies
Login or Register to Ask a Question