簡體   English   中英

用於連接多個文件的命令行或批處理 cmd

[英]A command-line or batch cmd to concatenate multiple files

我在一個目錄中有 10 個 sql 文件

是否有一種命令行方法可以將這些文件(包括每個文件的文件名及其內容)連接到一個文件中?

例如 finalfile.sql 應該是這樣的

   sql1.sql
   '
   'sql1 content.....
   '
   sql2.sql
   '
   'sql2 content.....
   '
   etc

我正在使用 windows 10

給定一個 .sql 文件只是純文本,是的,您可以使用標准批處理命令來完成。

您需要以下知識點:

  • 將文件內容打印到控制台: type <filename>
  • 將自定義 output 打印到控制台: echo <mytext>
  • 打印換行符: echo. (應該在這種情況下工作)
  • 將控制台 output 重定向到文件中: 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 文件所在的同一目錄中運行。在同一目錄中,將創建 output 文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM