• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:DOSで違う階層のファイルまでも一覧表示したい)

DOSで違う階層のファイルまでも一覧表示したい

このQ&Aのポイント
  • 初心者でも使えるDOSコマンドを使って、違う階層のファイルまで一覧表示する方法について説明します。
  • フォルダAにある3つの文書ファイルと1つのフォルダ、その中にある4つのファイル名の一覧をテキストファイルに書き出す方法を紹介します。
  • 参考になるコマンドや注意点も掲載していますので、ぜひ試してみてください。

質問者が選んだベストアンサー

  • ベストアンサー
noname#223623
noname#223623
回答No.9

#5,#8です。#8の回答で間違いがありました。folder1の次にある%1を%iにしてください。  (誤) c:\>for /r c:\folder1 %1 in (*.csv) do @echo %~nxi >> list.txt  (正) c:\>for /r c:\folder1 %i in (*.csv) do @echo %~nxi >> list.txt

machael
質問者

お礼

きたーっ!!!! 出来ました!! 本当にありがとうございました。

machael
質問者

補足

初心者でまったく分からなくて申し訳ないのですがコマンドの意味について聞いてもよろしいでしょうか? お聞きしたい点はこのforの構文についてです。 具体的にはそれぞれの単語(/r,%i,@echo,%~nxi)についてです。 よろしくお願いいたします。

その他の回答 (8)

noname#223623
noname#223623
回答No.8

#5です。今度は質問文のforコマンドをちょっと変えてみた。Vistaは触ったこともないので有効かどうかわかりませんが。  c:\>for /r c:\folder1 %1 in (*.csv) do @echo %~nxi >> list.txt すべてのファイルを出力するなら*.csvを*に変更して実行します。

noname#144013
noname#144013
回答No.7

すみません。#6です。 >ソフトはできる限りインストールしない方向で考えています。 ということでしたね。見落としてしまいました。 ですので、【ANo.6】の回答はスルーして下さい。すみませんでした。

machael
質問者

お礼

回答ありがとうございます

noname#144013
noname#144013
回答No.6

こんにちは。 【案その1】 Windowsに付属しているDOSコマンド一つのみでご希望のファイルリストを作成するのは、難しいようなので テキスト成形用のコマンドツール(例えば "SED" などのフリーウェアの利用)と組合わせてみるのは如何 でしょうか? <作成手順の例> 1)DIRコマンドでファイル一覧をテキスト出力(成形前)   **>dir /s /a-d /oend /b > temp1.txt 2)出力されたテキストファイルを、テキスト成形ツールで余分なパス名などを削り新たなテキストを出力(成形後)   **>sed s/^.*\\// temp1.txt > temp2.txt ※SEDなどのGNU系のツールに関しては下記サイトが参考になると思います。 ■もめす屋 > WindowsでLinuxコマンドを使う http://www.zuk.jp/gnuwin32.html 【案その2】 『コマンドプロンプト上の操作で』と言う主旨とは違ってしまいますが、単純にフォルダ内のファイル一覧を テキスト化したいのであれば、それ専用のツール(フリーソフトなど)を使用してみるのは如何でしょうか? 「Vector」の場合ですが、下記より該当するものを探してみては如何でしょう? ■Download: Windows > ユーティリティ > ファイル管理 > ファイル一覧 http://www.vector.co.jp/vpack/filearea/win/util/file/list/ このうち、Vistaでも使えそうなものを一つ上げてみました。 ■ワンタッチファイルインフォメーション(WindowsNT/2000/XP/Vista / ユーティリティ) http://www.vector.co.jp/soft/winnt/util/se417662.html ・対応する出力形式は「HTML/TXT(テキスト)/CSV/PDF」とのことです。 以上です。見当違いでしたらすみません。

machael
質問者

お礼

回答ありがとうございます。 せっかくですので参考にさせていただきます

noname#223623
noname#223623
回答No.5

どういう出力を希望してるのかわからないので、ここではDIRコマンドで出力する。  c:\>dir folder1 /s /b /a-d  c:\folder1\1.csv  c:\folder1\2.csv  c:\folder1\3.txt  c:\folder1\folder2\4.csv  c:\folder1\folder2\5.csv  c:\folder1\folder2\6.png  c:\folder1\folder2\7.txt 特定のファイルだけ出力する場合、例えばcsvファイルならこんな感じ。  c:\>dir folder1\*.csv /s /b /a-d この結果でよければファイルにリダイレクトしてください。  c:\>dir folder1 /s /b /a-d > list.txt ちなみにこれはWin2000で試したのでその他のWindows、または純正のDOSだとうまくいかない可能性はある。

machael
質問者

お礼

パス名まで出力されてしまうのですが、ファイル名のみをテキストに出させる方法はありませんでしょうか?? 回答ありがとうございます。

  • koketa58
  • ベストアンサー率18% (355/1961)
回答No.4

ANo2です。 これってリアルなDOSじゃなくてWindowsナンチャラのコマンドプロンプトの話ならゴメンナサイです。

  • cynthia4
  • ベストアンサー率51% (186/358)
回答No.3

for /R %i in (*.*) do echo %i >> list.txt でどうですか。 少なくとも、XP のDOS窓ではうまくいくような 本当のDOS( MS-DOS ) では、分からないが。

machael
質問者

お礼

このコマンドもやってみたのですがパス名までもが出力されてしまいます。 ファイル名のみを出力する方法はありませんでしょうか? 回答ありがとうございます。

machael
質問者

補足

ちなみに私のパソコンはvistaです。

  • koketa58
  • ベストアンサー率18% (355/1961)
回答No.2

DOSでファイル管理なら「FD」と言うソフトを使ってはどうですか。 IBM-PC(MS-DOS)用 http://www.vector.co.jp/soft/dos/util/se020040.html PC-98用 http://www.vector.co.jp/soft/dos/util/se000010.html

machael
質問者

お礼

回答ありがとうございます。 ソフトはできる限りインストールしない方向で考えています。 せっかく回答して頂いたのに説明不足で申し訳ありません。

  • pasocom
  • ベストアンサー率41% (3584/8637)
回答No.1

例に上げられた方法は、特定の名称・拡張子のファイルを検索してリストアップできるだけです。 やはりDOSでのファイル一覧は「dir」コマンドになるのでは?。 フォルダA>dir で B<DIR> ファイル1 ファイル2・・・ となるので次ぎにフォルダBに移って(フォルダA>cd フォルダB) フォルダB>dir とする。これ以外にはないような・・・。

machael
質問者

お礼

回答ありがとうございます。 できればフォルダ名に依存しないようなコマンドを探しています…。

関連するQ&A