私は検索しましたが、答えが存在しない場合は謝罪しませんでした。
私はバッチファイルがあまり得意ではありませんので、これを覚えておいてください。
私が望んでいるのは、現在のフォルダー内のフォルダーのリストをリスト/保存する単一のバッチファイルです。
したがって、基本的に特定のフォルダー内でこのバッチファイルを実行すると、バッチファイルが実行されたフォルダー内のすべてのフォルダー(ファイルまたはサブフォルダーではなく、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