多くのサブディレクトリを含むディレクトリがあります。これらのサブディレクトリ内には、多数の.asf、.jpg、および.txtファイルがあります。ディレクトリとサブディレクトリ内のすべての* .asfファイルを、パス名なしで一覧表示したいと思います。
したがって、基本的にはdir/sコマンドを実行したいのですが、絶対パス名は表示しません。とにかくこれを行うことはありますか?.
非常に遅いですが、誰かに役立つかもしれません。私は彼がこの1行のコマンドを求めていると思います
forfiles /m *.asf /s >d:\Hitendra.Txt
この後皆さんご存知のようにここに(>)
結果をコンピュータのDドライブにファイル名Hitendra.Txtで保存しています
小切手:
FORFILES /S /C "CMD /C ECHO @relpath"
cmdシェルプロンプトでこれを試してください:
for /r %a in (*.asf) do @echo %~tza %~nxa
名前のみ:
for /r %a in (*.asf) do @echo %~nxa
あなたが試すことができます
dir /s | findstr .asf
編集:これは役立つと思います。これは私の test.bat
@echo off
for /f "usebackq TOKENS=*" %%i in (`dir /s /b *.txt`) do echo %%~nxi
pause
/f usebackq
は、バッククォート内のすべてがdosコマンドとして実行されることを示します
TOKENS=*
は、スペースを含むファイル名も解析します。
echo %%~nxi
--n
はファイル名のみをリストし、x
は拡張子のみをリストします。両方を組み合わせると、ファイル名と拡張子が表示されます。
編集:usebackq
は必要ありません。代わりに単一引用符を使用できます。