Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

SED: Replacing String After Single Quote

Tags:

regex

bash

sed

I have a file named file.txt that contains the following:

CREATE LARGE TABLESPACE LONGSPCE1 IN DATABASE PARTITION GROUP IBMDEFAULTGROUP PAGESIZE 4096 MANAGED BY DATABASE
     USING (FILE '/db2data1/TGT_INST/TGT_DB/LONGSPCE1.c1' 1588368,
            FILE '/db2data2/TGT_INST/TGT_DB/LONGSPCE1.c2' 1588368,
            FILE '/db2data3/TGT_INST/TGT_DB/LONGSPCE1.c3' 1588368,
            FILE '/db2data4/TGT_INST/TGT_DB/LONGSPCE1.c4' 1588368)

I am trying to change the numerics after the c[0-9]' to a value of 100.

I have tried the following with no luck.

cat file.txt |sed 's/(c1'' )\([0-9]*\)/$1 100/g'
like image 872
BennyMinVA Avatar asked Apr 16 '26 17:04

BennyMinVA


1 Answers

You can use:

sed "s/\(c[0-9]\+'\) [0-9]\+/\1 100/" file.txt

USING (FILE '/db2data1/TGT_INST/TGT_DB/LONGSPCE1.c1' 100,
       FILE '/db2data2/TGT_INST/TGT_DB/LONGSPCE1.c2' 100,
       FILE '/db2data3/TGT_INST/TGT_DB/LONGSPCE1.c3' 100,
       FILE '/db2data4/TGT_INST/TGT_DB/LONGSPCE1.c4' 100)
like image 154
anubhava Avatar answered Apr 19 '26 15:04

anubhava



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!