2013-08-23 11 views
7

私は多くのサブディレクトリを含むディレクトリを持っています。これらのサブディレクトリには、.asf、.jpg、& .txtファイルがロードされます。私はすべての* .asfファイルをディレクトリとサブディレクトリ内にリストするが、パス名は付けない。パス名なしでディレクトリ/サブディレクトリ内のすべてのファイルを一覧表示する方法CMD?

基本的に私はdir/sコマンドを実行したいが、フルパス名は表示しない。これを行うにはとにかくありますか?

答えて

3

CMDシェルプロンプトでこれを試してみてください。

for /r %a in (*.asf) do @echo %~tza %~nxa 

は名前のみ:

for /r %a in (*.asf) do @echo %~nxa 
+0

あなたほど。それは本当に私を助けました。 :) –

3

あなたは

dir /s | findstr .asf 

編集を試すことができます:私はこれが役立つだろうと思います。これは、DOSが

TOKENS=*もスペースを含むファイル名を解析し、コマンドとしての私のtest.bat

@echo off 
for /f "usebackq TOKENS=*" %%i in (`dir /s /b *.txt`) do echo %%~nxi 
pause 

/f usebackqが内側のバッククォートが実行されているものは何でも言うことです。

echo %%~nxi - nはファイル名のみを示し、xは拡張子のみを示しています。両方を組み合わせると、ファイル名と拡張子が表示されます。

編集: usebackqは不要です。一重引用符を使用できます。

+0

あなたの返事をありがとう。しかし、これはまだ各ファイルの完全なパスを示しています。私は 'filename.asf'を抽出したいと思います。 – Nicknz125

+0

@ Nicknz125 plz編集を参照してください。 –

+0

'usebackq'は引用方式が変更されたことを意味します。**ではなく**コマンドが続きます。ヘルプは 'for /?'を参照してください。ここで 'usebackq'は必要ありません。 – Endoro

4

チェック:非常に遅く

FORFILES /S /C "CMD /C ECHO @relpath" 
+0

これは素晴らしいです。素晴らしい作品です! –

7

誰かに有用である可能性があります。 私はあなたのすべてがこの(>)後、私は ファイル名Hitendraと私のコンピュータのDドライブに結果を保存しています知っているように、彼はここで、この1行のコマンドのために

forfiles /m *.asf /s >d:\Hitendra.Txt

を求めていると思います。 Txt

+0

ありがとう、これは私が探しているものです。 – deathlock