/ / Sed еквівалент в файлі .bat - windows, batch-file, sed, scripting, sh

Sed еквівалент в файлі .bat - windows, batch-file, sed, scripting, sh

У мене є скрипт оболонки (.sh), де я використовую сед команда замінити останній відповідний символ у файлі (я помістив команду нижче).

Як мені замінити команду, щоб отримати таку ж функціональність у пакетному файлі (.bat), не додаючи жодних пакетів / плагінів (для сумісності в Windows 7 та пізніших версіях)?

sed -i "$ s/,/;/g" abc.java

Відповіді:

3 для відповіді № 1

Пакетні сценарії Windows не мають ніяких власних інструментів, які можуть зручно робити щось подібне до sed.

Можливо, ви можете використовувати PowerShell за допомогою простого сценарію або CSCRIPT з невеликим користувацьким сценарієм VBS або JScript.

Я б користуюсь JREPL.BAT - утиліта обробки тексту регулярного виразу. Це чистий скрипт (гібридний пакетний / JScript), який працює спочатку на будь-якій машині Windows з XP. Для цього не потрібні ніякі не рідні exe або com файли.

Повна документація доступна з командного рядка за допомогою jrepl /?, або jrepl /?? для розсилки допомоги.

Ваша нескладна задача може бути виконана JREPL за допомогою:

call jrepl "," ";" /inc -1 /f abc.java /o -

0 для відповіді № 2

У вікнах немає седа, не без будь-якого плагіна або аддону. Якщо вам потрібно використовувати sed, ви можете встановити SED для Windows.