パス全体を含まないルートディレクトリを読み取ることができるバッチコマンドはありますか?ルートディレクトリを読み取るバッチファイル
D:\
またはE:\
にあるかどうかをバッチファイルで伝えたいです。
私が使用してみました:
set mypath=%cd%
@echo %mypath%
Pause
しかし、それはちょうどそれがだけではなくルートにある正確な場所を言います。バッチファイルがあるディレクトリをカレントディレクトリのCMD.EXEがで動作が異なる可能性があり
パス全体を含まないルートディレクトリを読み取ることができるバッチコマンドはありますか?ルートディレクトリを読み取るバッチファイル
D:\
またはE:\
にあるかどうかをバッチファイルで伝えたいです。
私が使用してみました:
set mypath=%cd%
@echo %mypath%
Pause
しかし、それはちょうどそれがだけではなくルートにある正確な場所を言います。バッチファイルがあるディレクトリをカレントディレクトリのCMD.EXEがで動作が異なる可能性があり
を使用します。
編集可変膨張Set "RootDir=%CD:~,3%"
Echo(%RootDir%
Pause
を使用For
ループ
For %%A In (%CD%) Do Set "RootDir=%%~dA\"
Echo(%RootDir%
Pause
を使用PushD
/Popd
PushD\&Call Set "RootDir=%%CD%%"&PopD
Echo(%RootDir%
Pause
を使用
質問をもう一度読み終えたら、私は第4の例を追加することにしました。これは、他の3つとは異なり、バッチファイルの場所のルートディレクトリを提供します。
Set "RootDir=%~d0\"
Echo(%RootDir%
Pause
バッチファイルのルートパスの使用を取得するには:。
for %%a in ("%0") do echo %%~da
カレントディレクトリをGERするにはここでは、スクリプトカレントディレクトリのルートディレクトリを提供あなたのためのいくつかのオプションがあります
echo "%cd:~0,3%"
そして、私たちは& REMのトリックを忘れないようにしましょう。
@ECHO OFF
set "root=%cd:\="&rem %
echo %root%
私はこれが好きです! ** ':)' ** – Aacini
チャームのように働いた!ありがとう! – JakeSixth