/ /フォルダー内のフォルダーを1レベルにリストするバッチファイル-バッチファイル

バッチファイルを使用してフォルダ内のフォルダを1つのレベルに一覧表示する - バッチファイル

私は検索しましたが、答えが存在しない場合は謝罪しませんでした。

私はバッチファイルがあまり得意ではありませんので、これを覚えておいてください。

私が望んでいるのは、現在のフォルダー内のフォルダーのリストをリスト/保存する単一のバッチファイルです。

したがって、基本的に特定のフォルダー内でこのバッチファイルを実行すると、バッチファイルが実行されたフォルダー内のすべてのフォルダー(ファイルまたはサブフォルダーではなく、1レベルのみ)が出力されます。

これはおそらく簡単なリクエストだと思いますが、Googleなどで運がなかったなどです。

回答:

回答№1の31

監督

使用 dir コマンド。入力する dir /? ヘルプとオプション。

dir /a:d /b

リダイレクト

次に、リダイレクトを使用してリストをファイルに保存します。

> list.txt

一緒に

dir /a:d /b > list.txt

これにより、ディレクトリの名前のみが出力されます。ディレクトリのフルパスが必要な場合は、以下を使用してください。


フルパス

for /f "delims=" %%D in ("dir /a:d /b") do echo %%~fD

オルタナティブ

を使用する他の方法 for コマンド。見る for /? ヘルプとオプション。これは名前だけを出力できます %%~nxD またはフルパス %%~fD

for /d %%D in (*) do echo %%~fD

ノート

これらのコマンドをコマンドラインで直接使用するには、二重パーセント記号を単一パーセント記号に変更します。 %%%

リダイレクトするには for メソッドは、単にechoステートメントの後にリダイレクトを追加します。二重矢印を使用 >> ここにリダイレクトしてファイルに追加します。そうしないと、他のすべてを上書きするため、最後のステートメントのみがファイルに書き込まれます。

... echo %%~fD>> list.txt

回答№2の場合は0

バッチスクリプトファイルが保存されているすべてのフォルダ名を印刷する

for /d %%d in (*.*) do (
set test=%%d
echo !test!
)
pause

回答№3の場合は0

このコマンドを試して、ディレクトリ内のファイルのリストを表示しました。

dir /s /b > List.txt

ファイルでは、以下のリストが表示されます。

C:Program Files(x86)Cisco Systems Cisco JabberXmppMgr.dll

C:Program Files(x86)Cisco Systems Cisco JabberXmppSDK.dll

C:Program Files(x86)Cisco Systems Cisco JabberaccessoriesPlantronics

C:Program Files(x86)Cisco SystemsCisco JabberaccessoriesSennheiserJabberPlugin.dll

C:Program Files(x86)Cisco SystemsCisco JabberaccessoriesLogitechLogiUCPluginForCisco

C:Program Files(x86)Cisco Systems Cisco JabberaccessoriesLogitechLogiUCPluginForCiscolucpcisco.dll

したいことは、完全なディレクトリパスではなく、サブディレクトリのみを表示することです。

ちょうどこのような:

Cisco JabberXmppMgr.dll Cisco JabberXmppSDK.dll

Cisco JabberaccessoriesJabraJabberPlugin.dll

Cisco JabberAccessoriesLogitech

Cisco JabberAccessPlantronics

Cisco JabberaccessoriesSennheiserJabberPlugin.dll