2017-08-04 5 views
-1

バッチファイルを経由して、ツリーのサブフォルダ後のパスを取得する方法:\ folderx \ foldery \ folderz私は簡単な解決策は、私は のdir Cの下に持っている例 の最新のフォルダで右のパスを取得したい

ツール1.0 ツール2.1 ツール3.1

私は最後の1 exemple取得したい: セットMytools_path = "C:\ folderx \ foldery \ folderz \ツール3.1"

+0

は確かに最新の作成日ではなく、アルファベットのディレクトリ・ネーミングに頼るの「最後の1」を決定しないでしょう。 – Compo

+0

Ok thx日付順でソートするには? –

+0

私は[powershell solution](https://stackoverflow.com/a/7394766/6738015)を提案したいと思います。 – Compo

答えて

0
for /f %%a in ("c:\folderx\foldery\folderz \Tools 1.0 \Tools 2.1 \Tools 3.1") do set "mytools_path=%%~nxa" 

文字列はパス名であるが、上記の技術を使用して、それがファイル名として同じ構造を有するので、find/fの〜-operatorsを使用することができます。

0

あなたの質問の不適切なフォーマットが誤解を招くでした。

パスにはスペースを入れた場合:それ以外の場合は

for /d %%A in (c:\folderx\foldery\folderz\*) Do Set Set Mytools_path="%%A" 

Set Base=c:\folderx\foldery\folderz\ 
For /f "delims=" %%A in('Dir /B/AD "%Base%"') Do set Mytools_path="%Base%%%A" 
関連する問題