、しかしそれはpasteable /コピーではありません。彼が正しく動作するには(Windows7を実行している私にとっては多分)、2つのファイルが必要です。
最初のファイル:
@echo off
echo Drag and drop your .txt file here, after that press Enter:
set txtfile=
set /p txtfile=
echo.%txtfile%
call c:\temp\process_filename.bat %txtfile%
第二のファイルdrag_drop.bat:process_filename.bat
FOR %%i in (%txtfile%) do set txtdir=%~dp1
cmd /K "cd %txtdir%"
私は2つのファイルを使用しなければならなかった理由がある%〜DP1のトリガー(そのため、構文はpaxdiabloから間違っていました - 私はあなたが187kの代理人を持っていることを知っています。私はあなたに小道具を与えています[%%〜dpi、特殊文字 '%'を無効にするために%%はエコーで使用され、dp1はデリムですファイル名から引用符を取り除くことができます。同じことが%%〜nxiにあります])
とにかく、他のファイル名を渡してバッチファイルを呼び出す必要があります。これは2番目のものです。これは必要な情報を取り除き、そのパスにアクセスしてから、そのディレクトリをcmdプロンプトで開きます。
代わり
あなたが同じファイルからこれを行うことができます...
@echo off
setlocal
IF '%process%'=='1' goto processFile
echo Drag and drop your .txt file here, after that press Enter:
set txtfile=
set /p txtfile=
echo.%txtfile%
set process=1
call c:\temp\dragdrop.bat %txtfile%
:processFile
set txtdir=
FOR %%1 in (%txtfile%) do set txtdir=%~dp1
cmd /K "cd %txtdir%"
endlocal
偉大な仕事:Dのおかげ – Dels