Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Копирование текста колонками (http://forum.oszone.net/showthread.php?t=308884)

niko_dovgiy 07-12-2015 12:20 2582327

Копирование текста колонками
 
Доброго времени суток ! Встретился с такой проблемой, необходимо скопировать текст из 1.csv , 2.csv , 3, csv в новый файл с расширением CSV !

файл 1.csv имеет строки :

1 2 3
1 2 3
1 2 3
1 2 3

Файл 2.csv :

4 5 6
4 5 6
4 5 6
4 5 6

Файл 3.csv

7 8 9 и т.д

Необходимо составить их в один файл что бы получилось примерно такой файл :

Файл 4.csv на выходе :

1 2 3; 4 5 6; 7 8 9;
1 2 3; 4 5 6; 7 8 9;
1 2 3; 4 5 6; 7 8 9;

Количество строк не должно быть ограниченно константой.

Если есть такая возможность оставьте коментарии по каждой из строк для большего понимания функционала скрипта ...
За ранее спасибо за помощь !

Georgio 07-12-2015 14:50 2582363

Код:

@echo off

set source="1.csv" "2.csv" "3.csv"
set destination="4.csv"
set "delimiter=; "

<nul>%destination% cmd/v/c for /l %%1 in () do @^>nul set/a n+=1^& (^
 for /f "delims=" %%2 in ('"find/n /v "" %source%| findstr/bl [!n!]"')^
  do @^>nul set/a o+=1^& set x=%%2^& if !o! neq 3 (set/p=!x:*]=!!delimiter!)^
  else echo(!x:*]=!!delimiter:~,-1!)^|^| exit/b^& set o=
 
exit/b


niko_dovgiy 07-12-2015 15:29 2582377

Спасибо, все работает четко ... Не могли бы вы прокомментировать строки ?


Время: 02:24.

Время: 02:24.
© OSzone.net 2001-