Перевод столбца в строку

Преобразование столбца в строку с заданными разделителями и обрамлением. Кодировка скрипта CP866.
Символ двойной кавычки при этом не удастся использовать как разделитель или обрамление.
Принцип работы такой: на входе файл с набором строк, на выходе файл с одной строкой где исходные строки обрамлены нужным разделителем(на самом деле набором символов) и разделяются заданным разделителем(также набор символов).

@ECHO OFF
:: Принимает четыре параметра из командной строки:
:: 1 - имя файла для обработки (обязательный!)
:: 2 - имя файла результата (необязательный!)
:: при незаданном параметре будет использован файл result.txt в текущей папке
SET FILE_RESULT=%~dp0result.txt
:: 3 - последовательность символов как разделитель для вывода (необязательный!)
:: при незаданном параметре будет использован символ
:: При указании ОБЯЗАТЕЛЬНО параметр брать в двойные кавычки!!!
SET RAZDEL=,
:: 4 - символ который будет использоваться для обрамления вывода по текущей строке (необязательный!)
:: при незаданном параметре будет использован символ '
:: При указании ОБЯЗАТЕЛЬНО параметр брать в двойные кавычки!!!
SET FRAME='
IF %~1==(
ECHO Имя файла для обработки не указано!
GOTO :ERR
)

IF NOT EXIST %~1 (
ECHO Файл для обработки не существует!
GOTO :ERR
)
IF NOT %~2== (
SET FILE_RESULT=%~2
)
IF NOT %~3== (
SET RAZDEL=%~3
)
IF NOT %~4== (
SET FRAME=%~4
)
FOR /F usebackq tokens=* delims= %%a IN (%~1) DO CALL :MAIN %%~a
GOTO :EOF
:MAIN
SET /p=%RAZDEL1%%FRAME%%~1%FRAME%<nul>>%FILE_RESULT%
SET RAZDEL1=%RAZDEL%
GOTO :EOF
:ERR
PAUSE
GOTO :EOF

Похожие материалы по этой теме на сайте

Содержимое
Интерпретатор CMD - вывод переменных со спецсимволами на экран и в файл

Известная, но слабоосвещенная тема - обработка в коммандном интерпретаторе CMD данных со спецсимволами.
В большинстве ситуаций она вполне решаема...
Плюс к этому периодически возникают задачи вывода в файл без перевода строки....

Скрипты для CMD

Скрипты выполняемые интерпретатором CMD.EXE - стандартной консольной оболочкой для Win2000/WinXP/Vista/Seven/Win8/Win2000 Server/Win2003/Win2008.

Страховое копирование по списку

Относительно простой вариант резервного копирования по списку файлов/папок с учетом типа резервной копии и количества хранимых копий по типам. Классические типы: дневная-недельная-месячная-годовая копии. Кодировка скрипта CP866....

Преобразование файлов 1CClientBankExchange в табличную форму

Лично мне периодически приходилось сталкиваться с обработкой данных не в табличной форме, а в "именованном формате" то есть когда каждый параметр пишется на отдельной строке в виде Параметр=Значение параметра причем файл...

Чтение данных из реестра в переменную окружения

Продвинутый кросплатформенный модуль для встраивания в скрипты, позволяющий в удобной форме получать данные из реестра для дальнейшего использования(как всегда - кодировка скрипта CP866):

Настройка TS Easy Print на сервере терминалов Windows Server 2012 R2

Технология TS Easy Print является альтернативой стандартной службе печати, появилась впервые в Windows Server 2008R2.

Новости российского отделения корпорации Майкрософт

Федеральная служба по техническому и экспортному контролю (ФСТЭК) вручила сертификаты для операционных систем Windows 8 и Windows Server 2012.

Вот полный список сертифицированных ОС на сегодняшний день:

Универсальный сервер сетевой загрузки и установки. Часть 3

         Начнем с подготовки фалов для установки Windows XP. Монтируем образ диска с системой: 

mount -o loop /home/iso/winxpsp3.iso /home/temp/xp

Распаковываем и переименовываем файлы...