Пакетный / javascript файл для удаления запятой в конце строк из нескольких файлов - PullRequest
0 голосов
/ 18 сентября 2018

Как я уже сказал, я хочу создать пакетный файл или файл javascript для удаления запятой в конце каждой строки (если она есть) из нескольких файлов одновременно.До сих пор я провел небольшое исследование и обнаружил следующее:


@if (@This==@IsBatch) @then
@echo off
rem **** batch zone *********************************************************

    type FILE1.ISO | cscript //nologo //e:javascript "%~f0" > NEWFILE1.ISO
    type FILE2.ISO | cscript //nologo //e:javascript "%~f0" > NEWFILE2.ISO

    exit /b

@end
// **** Javascript zone *****************************************************
    while (!WScript.StdIn.AtEndOfStream) WScript.StdOut.WriteLine(WScript.StdIn.ReadLine().replace(/,$/,''));

ПРОБЛЕМА: имена файлов меняются каждый раз, когда я использую сценарий, так что есть шанс, что мне не придетсяпоставить имя каждого файла каждый раз, когда я его использую?Можно ли просто сказать: найти .iso файлы в C: / foldername и удалить из него запятые?

Заранее спасибо!

1 Ответ

0 голосов
/ 18 сентября 2018

Пакетный вариант.Просто проверьте, является ли последний символ запятой, если не выведите строку как есть:

@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%i in ('type *.iso') do (
  set "lines=%%i"
  set "test=!lines:~-1!"
  if "!lines:~-1!"=="," (call set "lines=%%lines:!test!=%%")
  echo !lines!
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...