2013-10-21 11 views
5

Windows 7には、コンテキストメニューのショートカットで実行される次のバッチファイルがあります。私の目的は、サブフォルダとファイルを含む見積もりフォルダを別のパスに移動して名前を変更し、プロンプトが表示されたときに挿入されたプロジェクト番号で名前を変更することです。フォルダを相対パスに移動して名前を変更するバッチファイル

for %%Q in (.) do set quotenumber=%%~nQ 
for %%Y in (.\..) do set year=%%~nY 
for %%C in (.\..\..\..) do set client=%%~nC 
set /P projectnumber="Enter Project number>" 
move "c:\myfiles\mainfiles\clients\%client%\quotes\%year%\%quotenumber%" "c:\myfiles\mainfiles\clients\%client%\projects\%year%\%projectnumber%" 

「プロセスが別のプロセスで使用されているため、ファイルにアクセスできません」というエラーが表示されます。 誰かが私が間違っていることを教えてもらえますか?私はプログラマではなく、これを動作させることはできません! ご協力いただければ幸いです。

答えて

3

あなたのコードを見ると、あなたはそれがc:\myfiles\mainfiles\clients\%client%\quotes\%year%\%quotenumber% dirで実行されていると仮定しています。 とdirがスクリプトによって保持されているので、あなたが別のplace.Whichに同じディレクトリを移動しようと最後の行には不可能であるitself.Tryこの:

for %%Q in (.) do set quotenumber=%%~nQ 
for %%Y in (.\..) do set year=%%~nY 
for %%C in (.\..\..\..) do set client=%%~nC 
set /P projectnumber="Enter Project number>" 
cd .. 
move "c:\myfiles\mainfiles\clients\%client%\quotes\%year%\%quotenumber%" "c:\myfiles\mainfiles\clients\%client%\projects\%year%\%projectnumber%" 
+0

が魅力のように働いた、ありがとうございました!! – user2902883

関連する問題