Replace a changing string in a text file

Hi,

I have script, which fetches a text file (which is a script of a database) into a variable.  Here is a portion of that script:
$DBScriptFile = $Path[0] + $dbname + '\01-DB-' + $dbname + '-' + $Date + '.sql'
$string = Get-Content $DBScriptFile

Inside the file I have strings like:
SIZE = 76288MB
FILEGROWTH = 512MB

I need to replace them with:
SIZE = 1024KB
FILEGROWTH = 1024KB

The problem is, those numbers may be different, e.g.:
SIZE = 10000KB
FILEGROWTH = 2048KB

So I need to replace everything which looks like:
SIZE = XYZB
FILEGROWTH = XYZB
with:
SIZE = 1024KB
FILEGROWTH = 1024KB

Any ideas?

Thanks

Parents
No Data
Reply
  • Ups, not quite, the replacement messes up some brackets.  Once I run the replacement, I get: 

    ( NAME = N'MyDB_201212', FILENAME = N'C:\SQLData\MyDB_201212.ndf' , SIZE = 76288KB , MAXSIZE = UNLIMITED, FILEGROWTH = 512KB ),

     FILEGROUP [MyDB_201302]

    replaced by: 

    ( NAME = N'MyDB_201212', FILENAME = N'C:\SQLData\MyDB_201212.ndf' , SIZE = 1024KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB , )  <-- the comma and the closing bracket swap places.

     FILEGROUP [MyDB_201302] )

    Any ideas?

Children
No Data