sed error


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting sed error
# 8  
Old 12-03-2010
Hi Pranyam,

any idea why the below sed is not working for me Just CREATE TABLE statement is missing.
Code:
sed -n '
  1d
  s/^\([^ ]\{1,33\} \)\(.*\)/CREATE TABLE "("\1(\2","/
  :loop
  ${
    s/,$/ );/
    p
    }
  N
  s/\n\(.*\)/ \1,/
  b loop
 ' schema_file.txt

out put is coming like this ,
Code:
TAB1 COL1 INTEGER COL2 INTEGER, COL3 INTEGER, COL4 INTEGER,


Last edited by Franklin52; 12-03-2010 at 09:13 AM.. Reason: Please use code tags
# 9  
Old 12-03-2010
hi,

may i make small change?

expected output:
Code:
CREATE TABLE (COL1 DATATYPE1 NULL,COL2 DATATYPE2 NOT NULL,COL3 DATATYPE3 ....COL N DATA TYPEN NOT NULL);

Code:
s="CREATE TABLE (" t " "$0
instead of 
s="CREATE TABLE " t " ("$0

# 10  
Old 12-03-2010
Quote:
$ cat temp.awk
BEGIN{ }
{

if(NR>1)
{
if(NF==3 && NR==2)
{
printf("CREATE TABLE %s(%s %s",$1, $2, $3)
}

if(NF==3 && NR>2)
{
printf(")\nCREATE TABLE %s(%s %s",$1,$2,$3)
}

if(NF==2)
{
printf(",%s %s", $1, $2)
}
}

}
END{
printf(")\n")
}
# 11  
Old 12-03-2010
But

"CREATE TABLE ( col1 type1 , .....) " is a wrong syntax

Proper syntax is :

Quote:
"CREATE TABLE TABLE_NAME( col1 type1,......)"
or
"CREATE TABLE TABLE_NAME as SELECT ...."
# 12  
Old 12-03-2010
Hi dhiren,
Can i know where is the input file name in this syntax?

Code:
$ cat temp.awk
BEGIN{ }
{

if(NR>1)
{
        if(NF==3 && NR==2)
        {
                printf("CREATE TABLE %s(%s %s",$1, $2, $3)
        }

        if(NF==3 && NR>2)
        {
                printf(")\nCREATE TABLE %s(%s %s",$1,$2,$3)
        }

        if(NF==2)
        {
                printf(",%s %s", $1, $2)
        }
}

}
END{
        printf(")\n")
}


Last edited by Franklin52; 12-03-2010 at 09:58 AM.. Reason: Please use code tags
# 13  
Old 12-03-2010
Hi Rocking77

temp.awk is input AWK script .

for example your input file name is file.txt then you can run program as follow

Quote:
$ awk -f temp.awk file.txt

where input file is as follow :
$ cat file.txt
TABLENAME COLUMNS DATATYPE
TAB1 COL1 INTEGER
COL2 INTEGER
COL3 INTEGER
COL4 INTEGER
TAB2 COL1 INTEGER
COL2 INTEGER
COL3 INTEGER
COL4 INTEGER
# 14  
Old 12-03-2010
TAB1 COL1 INTEGER NOT NULL
COL2 CHAR NOT NULL WITH DEFAULT
COL3... INTEGER NOT NULL WITH DEFAULT

COLn INTEGER NOT NULL WITH DEFAULT

Hi all Thanks for your help.Now i have 5 columns in my input file (this is last trail to my scripting i am about to achieve my out put please bear me).

For this input i need out put like .

CREATE TABLE TAB1(COL1 INTEGER NOT NULL,
COL2 CHAR NOT NULL WITH DEFAULT,
COL3... INTEGER NOT NULL WITH DEFAULT,

COLn INTEGER NOT NULL WITH DEFAULT)
IN TABSPACE INDEX IN INDEXSPACE;

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

sed and awk giving error ./sample.sh: line 13: sed: command not found

Hi, I am running a script sample.sh in bash environment .In the script i am using sed and awk commands which when executed individually from terminal they are getting executed normally but when i give these sed and awk commands in the script it is giving the below errors :- ./sample.sh: line... (12 Replies)
Discussion started by: satishmallidi
12 Replies

2. Shell Programming and Scripting

sed Error

I am using this command: sed 's///g' file1 I want to keep only Arabic Characters and remove all others. I get this error: sed: -e expression #1, char 17: Invalid collation character (3 Replies)
Discussion started by: Viernes
3 Replies

3. Shell Programming and Scripting

sed returns error "sed: -e expression #1, char 18: unterminated `s' command"

Hello All, I have something like below LDC100/rel/prod/libinactrl.a LAA2000/rel/prod/libinactrl.a I want to remove till first forward slash that is outputshould be as below rel/prod/libinactrl.a rel/prod/libinactrl.a How can I do that ??? (8 Replies)
Discussion started by: anand.shah
8 Replies

4. UNIX for Dummies Questions & Answers

sed error

Hi, I'm trying to go through a file and replace in each word (separated by new lines if it matters) the first occurrence of a vowel with #. works, but of course it replaces all vowels. However, removing the /g produces an error that says: Can anyone help?? (1 Reply)
Discussion started by: justOne21
1 Replies

5. Shell Programming and Scripting

SED error

Hi, I am trying to write an SED script to extract some strings from each line of a file and print it into another file. The sample input looks like this. AVE_LOC_ADDED <= 1.1429: 0 (28035.0/53.0) <IG:0.09933947301390625; GR:0.21494375103088412; WeightedGR:6679.592007035755>... (4 Replies)
Discussion started by: sandeepk1611
4 Replies

6. Shell Programming and Scripting

Error in sed

Hello, I want to remove .txt from every file name: for file in *.txt; des=$(echo $file | sed 's/\.txt//'); mv "$file" "$des"; done but this gives me: bash: syntax error near unexpected token `des=$(echo $file | sed 's/\.txt//')' I understand that there's other ways of doing this... (1 Reply)
Discussion started by: juliette salexa
1 Replies

7. Shell Programming and Scripting

sed ERROR

Hi Leute Kann mir bitte jemand diesen Fehler rerklären? Ohne Zuweisung gehts und es kommt der modifizierte String raus. Weise ich es einem String zu kommt dieser Fehler. Was mache ich da flasch? 0:521:root@pendrive /media/disk/system_setup # STRING=/mnt/new/path 0:522:root@pendrive... (3 Replies)
Discussion started by: latenite
3 Replies

8. Shell Programming and Scripting

sed error

hi guys!! I am new to shell script.. here is what i want do, i want to search original string in export.txt file which is: export mib =/opt/old_mib/ i want to replace it by export mibs =/opt/new_mibs/ i tried sed -e 's/export mib =/opt/old_mib//export mibs =/opt/new_mibs//g' ... (4 Replies)
Discussion started by: allrise123
4 Replies

9. Shell Programming and Scripting

sed error : Syntax error: redirection unexpected

My script is throwing the error 'Syntax error: redirection unexpected' My line of code.. cat nsstatustest.html | sed s/<tr><td align="left">/<tr><td align="left" bgcolor="#000000"><font color="white">/ > ztmp.Ps23zp2s.2-Fpps3-wmmm0dss3 HTML tags are getting in the way but they're needed to... (3 Replies)
Discussion started by: phpfreak
3 Replies

10. Shell Programming and Scripting

Error when using sed

Hi, I have a input file with following contents ---------------------------------------------------------Run Number: 1----------------------------------------------------------- test_run -layout test_vaal -i |Started|05/28/2007 02:19:30|TEST|8651... (2 Replies)
Discussion started by: Raghuram.P
2 Replies
Login or Register to Ask a Question