Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1248
  • Last Modified:

Batch file to remove commas from a different file.

I need to run a command from a batch file that removes commas from a specified file.  Not too bothered what it does with them, either remove completely or replace with another character.

This is to stop user entered commas from messing up my format in a .CSV file.

Many thanks in advance!

Ian
0
IanWood
Asked:
IanWood
  • 3
  • 2
1 Solution
 
sirbountyCommented:
Munge would probably be the easiest way to achieve this:
http://www.petri.co.il/download_free_reskit_tools.htm

If you're opposed to that idea, can you post a portion of your file along with what operating system you're using?
0
 
IanWoodAuthor Commented:
I don't really want to start using 3rd party uliities to do this if I can help it.

The file is a bog standard text file (seperated by |'s) :-

H||Mrs|Elizabeth|Jones|7 wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|01564 353 43334|liz@hotmail.com|Y|Mrs Elizabeth Jones|7 Wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|Mrs Elizabeth Jones|7 wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|VI|1234556578912345678|1102|1204||181927|280804|09:05|850|13|
D|26153|Sensitive Moisturising Body Lotion - 250ml|400|3|1200|
D|30064|30064|250|1|250|

I'm running XP, but any solution should ideally work on 2000 as well.

Thanks!
0
 
sirbountyCommented:
Ok - XP is what I'm using, so this should work for you....

Before (I added a couple of commas to test):
H||Mrs|Elizabeth|Jones|7 wood, Drive|Four, Trees|Sutton|West, Midlands|B74 5RD|01564 353 43334|liz@hotmail.com|Y|Mrs Elizabeth Jones|7 Wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|Mrs Elizabeth Jones|7 wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|VI|1234556578912345678|1102|1204||181927|280804|09:05|850|13|
D|26153|Sensitive, Moisturising Body Lotion - 250ml|400|3|1200|
D|30064|30064|250|1|250|


After:
H||Mrs|Elizabeth|Jones|7 wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|01564 353 43334|liz@hotmail.com|Y|Mrs Elizabeth Jones|7 Wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|Mrs Elizabeth Jones|7 wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|VI|1234556578912345678|1102|1204||181927|280804|09:05|850|13|
D|26153|Sensitive Moisturising Body Lotion - 250ml|400|3|1200|
D|30064|30064|250|1|250|


::-------begin code---------
@echo off
for /f "delims=" %%a in (test.txt) do call :process "%%a"
goto :eof

:process
set strData=%1
set strData=%strData:,=%
for /f "delims=" %%x in (%strData%) do echo %%x >> testnew.txt
::-------end code-----------

Not my prettiest coding, but effective.  Let me know if that will work for you...
0
Fill in the form and get your FREE NFR key NOW!

Veeam is happy to provide a FREE NFR server license to certified engineers, trainers, and bloggers.  It allows for the non‑production use of Veeam Agent for Microsoft Windows. This license is valid for five workstations and two servers.

 
Drew LakeCommented:
I really don't know much about scripting but here is a site:  http://www.easydos.com/dosindex.html

I would think you would have to use the: IF, FIND, and DEL command in one string.  Good Luck and I hope this helps.
0
 
IanWoodAuthor Commented:
SirBounty, That seems to work fine.  one thing, is there anyway to keep the original filename?  

Thanks!
0
 
sirbountyCommented:
If you're reading it line by line, then you'll have to export it into another file (I think munge will allow this).
For the code above though, simply add the following just before the goto :eof line:

if exist testnew.txt del test.txt
ren testnew.txt test.txt
0

Featured Post

[Webinar] Cloud and Mobile-First Strategy

Maybe you’ve fully adopted the cloud since the beginning. Or maybe you started with on-prem resources but are pursuing a “cloud and mobile first” strategy. Getting to that end state has its challenges. Discover how to build out a 100% cloud and mobile IT strategy in this webinar.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now