Показать полную графическую версию : заменять символы "а" на "b"
egoregor
09-06-2010, 10:53
написать батник который будет в текстовых файлах заменять символы "а" на "b"
El Sanchez
09-06-2010, 15:53
egoregor,
@Echo Off
Set Source=C:\Temp
SetLocal EnableDelayedExpansion
For %%A In ("%Source%\*.txt") Do (
For /F "Tokens=1* Delims=:" %%B In ('Type "%%A"^|Findstr /IN "$"') Do (
Set Str=%%C
If "!Str!"=="" (
Echo.>>"%%A_tmp"
) Else (
Set Str=!Str:a=b!
Echo !Str!>>"%%A_tmp"
)
)
Move /Y "%%A_tmp" "%%~fA"
)
EndLocal
megaloman
09-06-2010, 23:08
Вот VBS-скрипт. Сохраните его в файл, например, rep_in_file.vbs
Из командной строки его можно запустить как
rep_in_file.vbs "Имя файла с путём" "Что ищем" "На что меняем"
Set WA = WScript.Arguments
na = WA.Count
If na < 3 Then
MsgBox "Недостаточное количество аргументов", vbOKOnly, "Ошибка при вызове функции"
Else
Filename = WA(0)
SFin = WA(1)
SRep = WA(2)
Call RepInFile(Filename, SFin, SRep)
End If
' ------------------------------------------------------
Sub RepInFile(F_n, S_f, S_r)
Set FSO = CreateObject("Scripting.FileSystemObject")
On Error Resume Next
Set F = FSO.OpenTextFile(F_n, 1, False)
If Err.Number = 0 Then
S = F.ReadAll
F.Close
S = Replace(S, S_f, S_r)
On Error GoTo 0
Set F = FSO.OpenTextFile(F_n, 2, True)
F.Write S
F.Close
Else
MsgBox "Файл " + F_n + vbCrLf + Err.Description, vbOKOnly, "Ошибка при открытии файла"
End If
End Sub
в текстовых файлах заменять символы "а" на "b" »
пример с использованием FART (http://fart-it.sourceforge.net/) (Find And Replace Text):
fart.exe C:\Test\*.txt "a" "b"
пример с использованием SFK (http://swissfileknife.sourceforge.net/) (Swiss File Knife):
sfk rep -pat -case -yes /a/b/ -dir C:\Test -file *.txt
P.S. т.к. речь про "символы", выбран режим замены с учетом регистра
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.