Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Contributor


Сообщения: 2728
Благодарности: 1697

Профиль | Отправить PM | Цитировать


Цитата Amunrah:
в процессе написания батника »
Зачем нужен батник, пока не ясно, какая суперзадача? В CMD имхо замену всех символов из этого набора сделать нельзя. Если принципиально использовать cmd, то можно совместить bat-файл с функцией в виде скрипта js, который эту замену сделает. И можно всё остальное ваять в CMD (между /* и */).
bat c вызовом js
Код: Выделить весь код
@set @E=1; /*

@Echo Off
	cls
	chcp 866 >nul

	Set "FileIn=Z:\Box_In\Большой txt файл.txt"
	Echo "%FileIn%"

	Cscript //NoLogo /E:jscript "%~dpnx0" "%FileIn%"
	Pause
GoTo :Eof

*/

var FileIn = WScript.Arguments(0);
//WScript.Echo(FileIn);

//var harm = '!"╣@#$^&*\\|/?:%<~>`';
  var harm = '!"№@#$^&*\\|/?:%<~>`';

var useful = " ";

var lharm=harm.length;

var FSO = WScript.CreateObject("Scripting.FileSystemObject");

var fIn = FSO.OpenTextFile(FileIn, 1, false);
var Alls = fIn.ReadAll();
fIn.Close();

for(var i=0; i<lharm; i++) {
	Alls = Alls.replace(new RegExp('\\'+harm.substr(i,1),'g'),useful);
}

fIn = FSO.CreateTextFile(FileIn, true);
fIn.Write(Alls);
fIn.Close();

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 20:10, 25-10-2018 | #3