При условии, что файл sql имеет только обычный текст, да, вы можете сделать это стандартными пакетными командами.
Вам нужны следующие биты знаний:
- Печать содержимого файла на консоль:
type <filename>
- Печать пользовательского вывода на консоль:
echo <mytext>
- Печать новой строки:
echo.
(в этом случае должно работать) - Перенаправление вывода консоли в файл:
sometext > <outputfile>
(добавление в файл с помощью >>
) - Группировка выходов для перенаправления: заключить в скобки
( ...) > <outputfile>
- Необязательно: повторять все файлы в каталоге:
for /f
(см. for /?
, если это необходимо)
Пример: sqlmerge.bat
В следующем быстром и простом примере , Я предполагаю, что вы знаете имена файлов 10 sql файлов и вам не нужен скрипт, который будет работать для произвольного количества файлов.
Пакетный файл "sqlmerge.bat" (выбрал ваш имя, как вам нравится) будет выглядеть так:
@echo off
(
echo sql1.sql
type sql1.sql
echo.
echo sql2.sql
type sql2.sql
echo.
echo FILENAME
type FILENAME
...continue copy&paste-adding above example block for the other needed files...
) > finalfile.sql
Пакетный файл должен быть запущен в В том же каталоге находятся файлы *. sql. В этом же каталоге будет создан выходной файл.