2011-02-10 1 views
0

同じディレクトリ内の複数のフォルダの内容を1つの新しいファイルにコピーしようとしています。コピーしたいファイルはすべて、拡張子が.sqlです。 1つのディレクトリを持つ - -CMDコピーコマンドを使用して複数のフォルダの内容をコピーするにはどうすればよいですか?

私はこれを試してみてください、それが動作します:

directory>copy *.sql copy.sql 

が、私は

directory>copy */*.sql copy.sql 

をしようとしたとき、私は

The syntax of the command is incorrect.

を取得し、私は間違って何をやっています?私はthis siteの指示に正しく従っていると思いますが、私ですか?

は、私は、これは違いを作るかどうかわからないんだけど、私は、Windows 7

TIA使用しています!

答えて

0

これはうまくいかないと思います。標準のWindowsコマンドシェルでは、path引数の最後の部分だけで、パスコンポーネントのワイルドカードマッチングは行われません。同様に、コマンドの引数予想通り

C:\> dir win* 
Volume in drive C is BSOD 
Volume Serial Number is 4AFF-AE03 

Directory of C:\ 

03/01/2011 07:58 AM <DIR>   Windows 
       0 File(s)    0 bytes 
       1 Dir(s) 393,128,820,736 bytes free 

、しかし、私はうまく

C:\> dir win*\sys* 
The filename, directory name, or volume label syntax is incorrect. 

C:\> dir windows\sys* 
Volume in drive C is BSOD 
Volume Serial Number is 4AFF-AE03 

Directory of C:\windows 

13/07/2009 08:36 PM <DIR>   system 
10/06/2009 03:08 PM    219 system.ini 
10/02/2011 07:55 AM <DIR>   System32 
09/02/2011 04:33 PM <DIR>   SysWOW64 
       1 File(s)   219 bytes 
       3 Dir(s) 393,128,816,640 bytes free 
+0

ありがとう!私は 'dir1 \ *。sql + dir2 \ *。sql ... copy.sql'という各ディレクトリを指定するだけでした。あなたのご意見ありがとうございます。 – chama

0

を行うために使用されてそこにスラッシュを、持っていますあなたのすべてのsqlファイルはテキストファイルなので、

タイプ* .sql >> copy.sql

+0

hmm、再帰的にしたいのは忘れていますが、単純な.batファイルを利用することもできます。コピーする再帰的なパラメータを持つすべての.sqlファイルを1つのディレクトリにコピーして ">>"コピーしたすべてのファイルを削除してください –

+0

これは1つのディレクトリでのみ動作します。 Marc氏のように、パスの一部としてワイルドカードを使用することはできません。しかし、ありがとう。 – chama

+0

@J Benjamin - 私たちのコメントがサイバースペースで交差したと思います。ありがとう。 – chama

1

しようとしていることはUnix(bash/sh)でも動作しますが、残念ながらWindows CMDでは動作しません。

del result.sql && FOR /F %G IN ('"dir *.sql /s /b"') DO type %G >> result.sql

それは、現在およびサブディレクトリ内の* .SQLをresult.sqlを削除して、指定した各ファイルのでしょう(dir *.sql /s /b)(type filename >> result.sql)をresult.sqlにコンテンツを追加:WindowsのCMDで

はこのような何かを行います。

それが中に導入されたのWindowsのバージョンがありFORFILESコマンドもありますが、わからない。

del result.sql && FORFILES /S /M *.sql /C "cmd /c type @path" > result.sql

(& &注ラインごとに複数のコマンドを追加するだけの方法と標準と交換することができます改行(\ r \ n)。

関連する問題