The UNIX and Linux Forums  

Go Back   The UNIX and Linux Forums > OS Specific Forums > Linux
Google UNIX.COM


Linux RedHat, Ubuntu, SUSE, Fedora, Debian, Mandriva, Slackware, Gentoo linux, PCLinuxOS. All Linux questions here!

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
Split a paragraph Sekar1 UNIX for Dummies Questions & Answers 3 06-05-2008 09:35 AM
help, using awk to get paragraph kunimi Shell Programming and Scripting 6 06-04-2008 03:56 AM
extracting last paragraph from a text uvrakesh Shell Programming and Scripting 1 04-24-2007 02:36 AM
selecting each paragraph and put it into a file...help me swamymns Shell Programming and Scripting 2 10-04-2005 08:46 AM
Bold the paragraph caprikar Shell Programming and Scripting 3 12-22-2003 03:44 PM

Reply
 
Submit Tools LinkBack Thread Tools Search this Thread Display Modes
  #1  
Old 06-04-2008
Registered User
 

Join Date: May 2008
Location: St. Louis
Posts: 74
Extract a paragraph

Hi ,
Unix.com has been life saver for me I admit
I am trying to extract a paragraph based on matching pattern "CREATE TABLE " from a ddl file . The paragraphs are seperated by blank line .

Input file is

#cat zip.20080604.sql1
CONNECT TO TST103

SET SESSION_USER OPSDM002

SET CURRENT SCHEMA OPSDM002


CREATE TABLE "OPSDM002"."DIM_ZIP" (
"ZIP_CD" CHAR(5) NOT NULL ,
"ZIP_TYP_SRC_CD" CHAR(1) NOT NULL ,
"ZIP_TYP_CD" CHAR(1) NOT NULL ,
"ZIP_ROW_END_DT" DATE NOT NULL ,
"ZIP_ROW_EFF_DT" DATE NOT NULL ,
"ZIP_LST_2_CD" CHAR(2) NOT NULL ,
"ZIP_FST_3_CD" CHAR(3) NOT NULL ,
"UPDT_DT" DATE NOT NULL WITH DEFAULT CURRENT DATE ,
"ST_NUM_CD" CHAR(2) NOT NULL ,
"ST_ABBR_CD" CHAR(2) NOT NULL ,
"PST_CNTY_NM" VARCHAR(25) NOT NULL ,
"PST_CNTY_CD" CHAR(3) NOT NULL ,
"LOAD_DT" DATE NOT NULL WITH DEFAULT CURRENT DATE ,
"HCFA_CNTY_NM" VARCHAR(30) NOT NULL ,
"HCFA_CNTY_CD" CHAR(4) NOT NULL ,
"CTY_NM" VARCHAR(28) NOT NULL )
COMPRESS YES
IN "TSOPS03" INDEX IN "TSOPIX03"

CREATE INDEX "OPSDM002"."IDX1_ST_CD" ON "OPSDM002"."DIM_ZIP"
("ST_ABBR_CD" ASC)
ALLOW REVERSE SCANS

CREATE UNIQUE INDEX "OPSDM002"."PK1_ZIP_CD" ON "OPSDM002"."DIM_ZIP"
("ZIP_CD" ASC)
CLUSTER ALLOW REVERSE SCANS

ALTER TABLE "OPSDM002"."DIM_ZIP"
ADD CONSTRAINT "PK1_ZIP_CD" PRIMARY KEY
("ZIP_CD")

CREATE ALIAS "OPSDM002"."ZIP" FOR "OPSDM002"."DIM_ZIP"

CREATE VIEW "OPSDM002"."ZIP_CUSTOMER_SEGMENT" ("CUST_ZIP_CD", "CUST_CTY_NM",
"CUST_HCFA_CNTY_CD", "CUST_HCFA_CNTY_NM", "CUST_PST_CNTY_CD", "CUST_PST_CNTY_NM",
"CUST_ST_ABBR_CD", "CUST_ST_NUM_CD", "CUST_ZIP_FST_3_CD", "CUST_ZIP_LST_2_CD",
"CUST_ZIP_ROW_EFF_DT", "CUST_ZIP_ROW_END_DT", "CUST_ZIP_TYP_CD", "CUST_ZIP_TYP_SRC_CD",
"LOAD_DT", "UPDT_DT") AS SELECT DIM_ZIP.ZIP_CD, DIM_ZIP.CTY_NM, DIM_ZIP.HCFA_CNTY_CD,
DIM_ZIP.HCFA_CNTY_NM, DIM_ZIP.PST_CNTY_CD, DIM_ZIP.PST_CNTY_NM, DIM_ZIP.ST_ABBR_CD,
DIM_ZIP.ST_NUM_CD, DIM_ZIP.ZIP_FST_3_CD, DIM_ZIP.ZIP_LST_2_CD, DIM_ZIP.ZIP_ROW_EFF_DT,
DIM_ZIP.ZIP_ROW_END_DT, DIM_ZIP.ZIP_TYP_CD, DIM_ZIP.ZIP_TYP_SRC_CD, DIM_ZIP.LOAD_DT,
DIM_ZIP.UPDT_DT FROM DIM_ZIP

CREATE VIEW "OPSDM002"."ZIP_MEMBER" ("MBR_ZIP_CD", "MBR_CTY_NM", "MBR_HCFA_CNTY_CD",
"MBR_HCFA_CNTY_NM", "MBR_PST_CNTY_CD", "MBR_PST_CNTY_NM", "MBR_ST_ABBR_CD",
"MBR_ST_NUM_CD", "MBR_ZIP_FST_3_CD", "MBR_ZIP_LST_2_CD", "MBR_ZIP_ROW_EFF_DT",
"MBR_ZIP_ROW_END_DT", "MBR_ZIP_TYP_CD", "MBR_ZIP_TYP_SRC_CD", "LOAD_DT",
"UPDT_DT") AS SELECT DIM_ZIP.ZIP_CD, DIM_ZIP.CTY_NM, DIM_ZIP.HCFA_CNTY_CD,
DIM_ZIP.HCFA_CNTY_NM, DIM_ZIP.PST_CNTY_CD, DIM_ZIP.PST_CNTY_NM, DIM_ZIP.ST_ABBR_CD,
DIM_ZIP.ST_NUM_CD, DIM_ZIP.ZIP_FST_3_CD, DIM_ZIP.ZIP_LST_2_CD, DIM_ZIP.ZIP_ROW_EFF_DT,
DIM_ZIP.ZIP_ROW_END_DT, DIM_ZIP.ZIP_TYP_CD, DIM_ZIP.ZIP_TYP_SRC_CD, DIM_ZIP.LOAD_DT,
DIM_ZIP.UPDT_DT FROM DIM_ZIP

CREATE VIEW "OPSDM002"."ZIP_PROVIDER" ("PROV_ZIP_CD", "PROV_CTY_NM", "PROV_HCFA_CNTY_CD",
"PROV_HCFA_CNTY_NM", "PROV_PST_CNTY_CD", "PROV_PST_CNTY_NM", "PROV_ST_ABBR_CD",
"PROV_ST_NUM_CD", "PROV_ZIP_FST_3_CD", "PROV_ZIP_LST_2_CD", "PROV_ZIP_ROW_EFF_DT",
"PROV_ZIP_ROW_END_DT", "PROV_ZIP_TYP_CD", "PROV_ZIP_TYP_SRC_CD", "LOAD_DT",
"UPDT_DT") AS SELECT DIM_ZIP.ZIP_CD, DIM_ZIP.CTY_NM, DIM_ZIP.HCFA_CNTY_CD,
DIM_ZIP.HCFA_CNTY_NM, DIM_ZIP.PST_CNTY_CD, DIM_ZIP.PST_CNTY_NM, DIM_ZIP.ST_ABBR_CD,
DIM_ZIP.ST_NUM_CD, DIM_ZIP.ZIP_FST_3_CD, DIM_ZIP.ZIP_LST_2_CD, DIM_ZIP.ZIP_ROW_EFF_DT,
DIM_ZIP.ZIP_ROW_END_DT, DIM_ZIP.ZIP_TYP_CD, DIM_ZIP.ZIP_TYP_SRC_CD, DIM_ZIP.LOAD_DT,
DIM_ZIP.UPDT_DT FROM DIM_ZIP

CREATE VIEW "OPSDM002"."ZIP_PROVIDER_MBR_PRI" ("MBR_PRI_PROV_ZIP_CD", "MBR_PRI_CTY_NM",
"MBR_PRI_HCFA_CNTY_CD", "MBR_PRI_HCFA_CNTY_NM", "MBR_PRI_PST_CNTY_CD",
"MBR_PRI_PST_CNTY_NM", "MBR_PRI_ST_ABBR_CD", "MBR_PRI_ST_NUM_CD", "MBR_PRI_ZIP_FST_3_CD",
"MBR_PRI_ZIP_LST_2_CD", "MBR_PRI_ZIP_ROW_EFF_DT", "MBR_PRI_ZIP_ROW_END_DT",
"MBR_PRI_ZIP_TYP_CD", "MBR_PRI_ZIP_TYP_SRC_CD", "LOAD_DT", "UPDT_DT") AS
SELECT DIM_ZIP.ZIP_CD, DIM_ZIP.CTY_NM, DIM_ZIP.HCFA_CNTY_CD, DIM_ZIP.HCFA_CNTY_NM,
DIM_ZIP.PST_CNTY_CD, DIM_ZIP.PST_CNTY_NM, DIM_ZIP.ST_ABBR_CD, DIM_ZIP.ST_NUM_CD,
DIM_ZIP.ZIP_FST_3_CD, DIM_ZIP.ZIP_LST_2_CD, DIM_ZIP.ZIP_ROW_EFF_DT, DIM_ZIP.ZIP_ROW_END_DT,
DIM_ZIP.ZIP_TYP_CD, DIM_ZIP.ZIP_TYP_SRC_CD, DIM_ZIP.LOAD_DT, DIM_ZIP.UPDT_DT
FROM DIM_ZIP

CREATE VIEW "OPSDM002"."ZIP_PROVIDER_REF" ("REF_PROV_ZIP_CD", "REF_CTY_NM",
"REF_HCFA_CNTY_CD", "REF_HCFA_CNTY_NM", "REF_PST_CNTY_CD", "REF_PST_CNTY_NM",
"REF_ST_ABBR_CD", "REF_ST_NUM_CD", "REF_ZIP_FST_3_CD", "REF_ZIP_LST_2_CD",
"REF_ZIP_ROW_EFF_DT", "REF_ZIP_ROW_END_DT", "REF_ZIP_TYP_CD", "REF_ZIP_TYP_SRC_CD",
"LOAD_DT", "UPDT_DT") AS SELECT DIM_ZIP.ZIP_CD, DIM_ZIP.CTY_NM, DIM_ZIP.HCFA_CNTY_CD,
DIM_ZIP.HCFA_CNTY_NM, DIM_ZIP.PST_CNTY_CD, DIM_ZIP.PST_CNTY_NM, DIM_ZIP.ST_ABBR_CD,
DIM_ZIP.ST_NUM_CD, DIM_ZIP.ZIP_FST_3_CD, DIM_ZIP.ZIP_LST_2_CD, DIM_ZIP.ZIP_ROW_EFF_DT,
DIM_ZIP.ZIP_ROW_END_DT, DIM_ZIP.ZIP_TYP_CD, DIM_ZIP.ZIP_TYP_SRC_CD, DIM_ZIP.LOAD_DT,
DIM_ZIP.UPDT_DT FROM DIM_ZIP

CREATE VIEW "OPSDM002"."ZIP_PROVIDER_SRVC" ("SRVC_PROV_ZIP_CD", "SRVC_CTY_NM",
"SRVC_HCFA_CNTY_CD", "SRVC_HCFA_CNTY_NM", "SRVC_PST_CNTY_CD", "SRVC_PST_CNTY_NM",
"SRVC_ST_ABBR_CD", "SRVC_ST_NUM_CD", "SRVC_ZIP_FST_3_CD", "SRVC_ZIP_LST_2_CD",
"SRVC_ZIP_ROW_EFF_DT", "SRVC_ZIP_ROW_END_DT", "SRVC_ZIP_TYP_CD", "SRVC_ZIP_TYP_SRC_CD",
"LOAD_DT", "UPDT_DT") AS SELECT DIM_ZIP.ZIP_CD, DIM_ZIP.CTY_NM, DIM_ZIP.HCFA_CNTY_CD,
DIM_ZIP.HCFA_CNTY_NM, DIM_ZIP.PST_CNTY_CD, DIM_ZIP.PST_CNTY_NM, DIM_ZIP.ST_ABBR_CD,
DIM_ZIP.ST_NUM_CD, DIM_ZIP.ZIP_FST_3_CD, DIM_ZIP.ZIP_LST_2_CD, DIM_ZIP.ZIP_ROW_EFF_DT,
DIM_ZIP.ZIP_ROW_END_DT, DIM_ZIP.ZIP_TYP_CD, DIM_ZIP.ZIP_TYP_SRC_CD, DIM_ZIP.LOAD_DT,
DIM_ZIP.UPDT_DT FROM DIM_ZIP


GRANT SELECT ON TABLE "OPSDM002"."DIM_ZIP" TO GROUP "DSDBDEV "

GRANT SELECT ON TABLE "OPSDM002"."DIM_ZIP" TO GROUP "UHCDMTST"

GRANT SELECT ON TABLE "OPSDM002"."DIM_ZIP" TO GROUP "CLOSEL01"

GRANT SELECT ON TABLE "OPSDM002"."DIM_ZIP" TO GROUP "CLOSEL02"

GRANT CONTROL ON TABLE "OPSDM002"."DIM_ZIP" TO GROUP "UHCDMDBA"

GRANT SELECT ON TABLE "OPSDM002"."DIM_ZIP" TO GROUP "CLOSEL04"

GRANT SELECT ON TABLE "OPSDM002"."DIM_ZIP" TO GROUP "CLOSEL05"

GRANT SELECT ON TABLE "OPSDM002"."DIM_ZIP" TO GROUP "SELCOE01"

GRANT CONTROL ON TABLE "OPSDM002"."DIM_ZIP" TO USER "ESHIRLE "

GRANT CONTROL ON TABLE "OPSDM002"."DIM_ZIP" TO USER "SNIETER "

GRANT CONTROL ON TABLE "OPSDM002"."DIM_ZIP" TO USER "LTREXL1 "

GRANT CONTROL ON TABLE "OPSDM002"."DIM_ZIP" TO USER "RSMIT11 "

GRANT CONTROL ON TABLE "OPSDM002"."DIM_ZIP" TO USER "KJOHNS5 "

GRANT CONTROL ON TABLE "OPSDM002"."DIM_ZIP" TO USER "AMENSEY "

COMMIT WORK

CONNECT RESET

TERMINATE

Desired output is


CREATE TABLE "OPSDM002"."DIM_ZIP" (
"ZIP_CD" CHAR(5) NOT NULL ,
"ZIP_TYP_SRC_CD" CHAR(1) NOT NULL ,
"ZIP_TYP_CD" CHAR(1) NOT NULL ,
"ZIP_ROW_END_DT" DATE NOT NULL ,
"ZIP_ROW_EFF_DT" DATE NOT NULL ,
"ZIP_LST_2_CD" CHAR(2) NOT NULL ,
"ZIP_FST_3_CD" CHAR(3) NOT NULL ,
"UPDT_DT" DATE NOT NULL WITH DEFAULT CURRENT DATE ,
"ST_NUM_CD" CHAR(2) NOT NULL ,
"ST_ABBR_CD" CHAR(2) NOT NULL ,
"PST_CNTY_NM" VARCHAR(25) NOT NULL ,
"PST_CNTY_CD" CHAR(3) NOT NULL ,
"LOAD_DT" DATE NOT NULL WITH DEFAULT CURRENT DATE ,
"HCFA_CNTY_NM" VARCHAR(30) NOT NULL ,
"HCFA_CNTY_CD" CHAR(4) NOT NULL ,
"CTY_NM" VARCHAR(28) NOT NULL )
COMPRESS YES
IN "TSOPS03" INDEX IN "TSOPIX03"




Thanks ,
Reply With Quote
Forum Sponsor
  #2  
Old 06-04-2008
Moderator
 

Join Date: Feb 2007
Posts: 2,332
With sed you can print a section between two regular expressions like this:

Code:
sed -n '/^CREATE TABLE/,/^IN/p' file
Regards
Reply With Quote
  #3  
Old 06-04-2008
Registered User
 

Join Date: May 2008
Location: St. Louis
Posts: 74
You ROCK Mr Franklin !
Reply With Quote
Google The UNIX and Linux Forums
Reply

Tags
regex, regular expressions

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes




All times are GMT -7. The time now is 10:59 AM.


Powered by: vBulletin, Copyright ©2000 - 2006, Jelsoft Enterprises Limited.
The UNIX and Linux Forums Content Copyright ©1993-2008. All Rights Reserved.Ad Management by RedTyger Visit The Complex Event Processing Blog

Content Relevant URLs by vBSEO 3.2.0