1

質問: sql create table/column/view/storedProcedure textfiles を含むいくつかのテキスト ファイルがあります。ここで、テキストファイルを 1 つのテキストファイルにマージしたいと考えています。

ディレクトリに移動し、次のように入力します。

type *.sql >> allcommands.sql

問題は、すべてのファイルのコンテンツの後にテキスト「 GO 」を追加する必要があることです。

次のようにしてGoを追加できます

type *.sql >> allcommands.sql & echo  GO  >> allcommands.sql

しかし、これは一度しか挿入されません。DOS コマンドでこれを行うにはどうすればよいですか?

4

4 に答える 4

6

次のようなものが必要です。

for %%f in (*.sql) do type %%f >>allcommands.sql & echo GO >> allcommands.sql

%%は、バッチ ファイルで使用するためのものです。バッチ ファイルから実行していない場合は、単一の % 記号のみが必要です。

于 2010-08-10T16:04:22.350 に答える
3

これを試してみてください

for %%f in (*.sql) do (
type %%f >>allcommands.sql
echo. >> allcommands.sql
echo GO >> allcommands.sql
echo. >> allcommands.sql )

改行を追加してから、各 SQL ファイルに移動します。それは私のために動作します。

于 2012-12-06T09:52:16.097 に答える
0
@echo off
CLS
::concat.bat outfile.sql
setlocal EnableDelayedExpansion

If EXIST GOTMP.TMP DEL /Q GOTMP.TMP
Echo GO>GOTMP.TMP
ECHO.>>GOTMP.TMP

If EXIST "%~1" DEL /Q "%~1"
Echo.>"%~1"

for /f "tokens=*" %%A in ('dir  /a-d /on /b "*.sql"') do call :perfaction "%%A%" "%~1"
ECHO Done Generating Output "%~1"
ECHO.
pause
Goto :EOF

:perfaction
ECHO "%~1"
copy "%~2"+"%~1"+GOTMP.TMP "%~2"
GOTO :EOF
于 2011-03-04T14:28:17.747 に答える
0

copyを使用して、最初のファイルと「GO」テキストを含むファイルを連結し、次に 2 番目のファイルと再度連結します。

于 2010-08-10T16:00:17.383 に答える