WindowsのCMD/BATを使用して、ソースファイルのABSOLUTEの場所がない場合、どのようにファイル(この場合は実行可能な/ .exeファイル)を新しい場所にコピーできますか?私はむしろCMDファイルとBATファイルを初めて使っています。CMD:パス名としてワイルドカードを使用して実行可能ファイルをコピーするにはどうすればよいですか?
指定されたファイル自体は、ユーザーの入力に依存します。したがって、そのファイルのパスはコード自体で指定されていません。
Ex。 MSpaint.exe(C:\ Windows \ System32にありますが、質問のコンテキストについてはわかりませんが)をPAINTというデスクトップフォルダにコピーします。
私は
copy "*\mspaint.exe" "C:\Users\User\Desktop\PAINT"
を使用してみました。しかし、私はノーさらに無駄に、ワイルドカードパスなしでコマンドを使用してみました
The filename, directory name, or volume label syntax is incorrect.
0 files(s) copied.
エラー声明は述べています。
copy "mspaint.exe" "C:\Users\User\Desktop\PAINT"
ご協力いただければ幸いです。ここで
の 'dir/sのC:\ filename.ext'は、ハードドライブを検索します。 '/ D %% A in( 'Dir/s c:\ filename.ext')Do Echo %% Aはコマンド出力で動作します。 –
コマンドプロンプトウィンドウを開き、 '/?'、 'call /?'、 'set /?'を実行し、最後に 'set'を実行して3つのコマンドとWindowsでデフォルトで定義されている環境変数。コピーしようとするファイルが隠しディレクトリやシステムディレクトリにあるか、 '/ R ...のために'隠されたファイルやシステムファイルであるという点を除いて、Noodlesが提案するコマンド__DIR__は本当に必要ありません。例えば、現在のユーザのデスクトップフォルダは '"%USERPROFILE%\ Desktop "'で参照できます。 – Mofi
実行可能なソースファイルがあなたのPATHにあれば、 'FOR/F'を使って見つけることができます。これは役に立ちます。 http://stackoverflow.com/questions/31575817/locate-file-and-copy-its-path-batch-script/31576863#31576863 PATHにない場合は、 'DIR/S 'ヌードルの示唆通り。しかし、プログラムがどこにあるのかを前提にしない限り、信頼できるとは言えません。 – lit