Is there a way to replace some characters in a text file with a batch file?
I didn't find any command to do that.
Is there a way to replace some characters in a text file with a batch file?
I didn't find any command to do that.
You can search for a command line program like GREP you can call from a batch that will take a replace string and a file and do the swap for you.
You can use DOS port of Unix command line utility "tr".
A free DOS port can be found here, one of the ones I like (there are many different ones) are "UXUTL — Comprehensive collection of command line Unix utilities for DOS."
The benefit is that you get a WHOLE BUNCh of incredibly useful commands, not just tr.
you can install unxutils and then do
sed "s/WORD_FROM/WORD_TO/" file_name > changed.file.name
to change words or
cat file|tr "a" "b" > changed.file.name
to change characters
Use sed or nothing:
sed -i 's/FROM/TO/g' filename.txt
sed can be download here, for various platforms.
The quick answer is "No, not with basic windows utilities"
But as the other answers suggested, there are lots of unix ports out there that do what you want. Take alook at gnuwin32 packages.
EDIT:
Okay, I revise my strict "No". There might be a way of doing it, depending on the complexity of your task and your OS. When using windows 2000 and above, cmd provides command extensions that you can use.
The basic idea is to use a FOR loop to go through each line of an input file and then to use string substitution provided by the SET command to replace your characters.
I have no solution at hand but you might try on your own, using infromation from this quite cool site. Look here for the FOR loop syntax and here for the string substitution.