バッチファイルを作成しています。このbatファイルの親フォルダを取得する必要があります。可能ですか? NBつまり、バッチを呼び出すプロンプトの現在のディレクトリではなく、バッチファイルの親フォルダです。
ありがとう
バッチの親フォルダは、変数%~dp0
にあります。例:
@echo off&setlocal
for %%i in ("%~dp0.") do set "folder=%%~fi"
echo %folder%
Endoroの答えも私にはうまくいきませんが、これはうまくいきます。これは私がこれを行うために私が使用するものです。
V3
これらの1つは正しいことを行う必要があります
for %%I in ("%~dp0.") do for %%J in ("%%~dpI.") do set ParentFolderName=%%~nxJ
echo %ParentFolderName%
for %%I in ("%~dp0.") do for %%J in ("%%~dpI.") do set ParentFolderName=%%~dpnxJ
echo %ParentFolderName%
V2:
for %%I in ("%~dp0\.") do set ParentFolderName=%%~nxI
echo %ParentFolderName%
V1:
これは現在の作業ディレクトリの親ディレクトリを取得します
for %%I in (..) do set ParentFolderName=%%~nI%%~xI
echo %ParentFolderName%
リファレンス: For | Microsoft Docs