ベストアンサー Rubyで特定のディレクトリ以下のファイル名をすべて表示するプログラム 2003/07/07 12:19 Rubyで特定のディレクトリ以下のファイル名をすべて表示するプログラムを書きたいのですが方法がわかりません。 どういうメソッドを使えばよいでしょうか? みんなの回答 (2) 専門家の回答 質問者が選んだベストアンサー ベストアンサー nightowl ベストアンサー率44% (490/1101) 2003/07/07 14:26 回答No.2 もしサブディレクトリ以下を再帰的に処理する必要があるなら、 require 'find' Find.find(".") do |path| # "" の中はディレクトリ名 if File.directory?(path) puts "::: In directory #{path} :::" puts Dir.entries(path) end end のようにしてください。 参考URL: http://www15.web24.jp/~c01763n1/rubytips/?%A5%C7%A5%A3%A5%EC%A5%AF%A5%C8%A5%EA 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 その他の回答 (1) nightowl ベストアンサー率44% (490/1101) 2003/07/07 12:38 回答No.1 こんにちは、kounesi さん。ここで初めて Ruby の質問を見ました^^ Dir.entries でできますよ。引数にディレクトリ文字列を与えてやると、 そのディレクトリ以下のファイル名を含んだ配列が返されます。 puts Dir.entries(".") を試してみてください。 参考URL: http://www.ruby-lang.org/ja/man-1.6/index.cgi?cmd=view;name=Dir 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 カテゴリ [技術者向] コンピュータープログラミング・開発CGI 関連するQ&A ディレクトリ以下のファイル名を取得する ディレクトリ名を指定するだけで、 そのディレクトリ内にある全てのデータファイルを 読み込んで処理するプログラムをC++で作ろうと考えています。 その為に、ディレクトリ以下のファイルのファイル名を 取得する方法(命令)を教えて頂きたく思います。 よろしくお願いします。 PHPでディレクトリ名のみ表示する方法が知りたいです。以下のプログラム PHPでディレクトリ名のみ表示する方法が知りたいです。以下のプログラムで「test」というディレクトリ内のファイル一覧(ディレクトリ名とファイル名)を表示するようにしているのですが、この中からディレクトリ名のみ表示させたいのですがどのようにすればいいのでしょうか? よろしくお願いします。 <?php if ($dir = opendir("test/")) { while (($file = readdir($dir)) !== false) { if ($file != "." && $file != "..") { echo "$file<br>\n"; } } closedir($dir); } ?> Perlで指定のディレクトリ以下のファイル名を全て表示させるスクリプト Perlで指定のディレクトリ以下のファイル名を全て表示させるスクリプトを考えておりますが、思いつきません。WindowsとLinuxの両方で利用たいです。 何かよいサンプルはありませんか? よろしくお願いします。 ネットワークエンジニアとは?技術職の未来を考える OKWAVE コラム 特定ディレクトリのみ、特定拡張子のファイルを表示したくない 表題の通りなのですが、特定ディレクトリ内にある特定拡張子のファイルのみを非表示にしたいのです。 例えば、[ file.xyz ]と言う拡張子のファイルがあったとします。それをそれぞれ[ c:\abc ][ d:\def ]と言う ディレクトリに格納し、後者のディレクトリに入った場合のみ非表示(隠し属性)とする方法はあるのでしょ うか? c:\abc\file.xyz ← 表示 d:\def\file.xyz ← 非表示(隠し属性) OSはWindows XP SP3となります。 ご存知の方、ご教示頂きたいと思います。 .htaccess記述、ディレクトリ→特定ファイル .htaccessの記述についてお伺いさせてください。 現在、特定のディレクトリにアクセスがあった際に、特定のファイルに転送したいと設定を試しているのですが、上手くいきません…。 ディレクトリからディレクトリでは無く、ファイルからファイルでもありません。 同じドメイン内で、特定のディレクトリ以下の全てのファイルにアクセスがあった場合、特定のファイルに転送したいです。 具体的には、 /hogehoge/ こちら以下にアクセスがあった際、 /mogemoge/hage.html といった具合に、ピンポイントで転送表示を行いたいと考えています。 再度ですが、ドメインは同一内で行い、/hogehoge/ → /mogemoge/hage.html といった具合に指定ファイルに転送を掛けたいです。 .htaccessの記述にお詳しい方いらっしゃいましたら、アドバイスのほどよろしくお願いします。 ディレクトリ以下のファイル・フォルダをすべて取得 あるディレクトリ以下のファイルをすべてListViewやListBoxに表示させるものを作成したいのですが、どうすればよいのでしょうか? VisualBasic2008を使っております。 特定ディレクトリ以下の複数のフォルダ名とファイル名を一括で連番にするバッチの作成 特定のフォルダ(ディレクトリ)以下の複数のフォルダ名とファイル名を 一括で連番にしてくれる方法(連番+拡張子のリネーム)を教えてください。 ソフトでは簡単ですが*.bat ファイルで実行するスクリプトを 知りたいので宜しくお願い致します 例えば フォルダ0 ├フォルダ1 │ ├ a.txt │ ├ b.jpg │ └ フォルダ2 │ └c.exe └ フォルダ3 └ d.exe という構造があったとして 000000 ├000001 │ ├ 000000.txt │ ├ 000001.txt │ └ 000000 │ └000000.txt └ 000002 └ 000000.txt この様に特定ディレクトリ以下の複数のフォルダ名とファイル名を連番 (上記は6桁ですが001,002…など3桁などに対応できる)にしたいのです 以下の方法で特定のフォルダ内のファイルを.txtに変更まではできましたが、 特定のフォルダより下層のファイルを.txtに変更はできませんでした。 REN E:\フォルダ\フォルダ\*.* *.txt 上記のスクリプトは特定フォルダにあるファイルは拡張子の変更が出来ますが、 そのフォルダより下層の複数のフォルダ名とファイル名の拡張子の変更をできないので、 *.batファイルで連番+拡張子のリネームを一括でするスクリプトの明記をお願い致します。 ご存知の方、どの様なご意見でも構いませんので ご回答頂けると幸いです。宜しくお願い致します。 rubyの勉強をしていてプログラムを作っているのですがうまくいきません。 rubyのプログラムを作っています。 指定したディレクトリの中の指定したファイルを検索します。 そしてファイルの有無を条件にして処理をしていくプログラムをつくっています。 イメージでは下記のような感じ if test.txtを検索(検索先のディレクトリは/../../tmp) #ファイル存在する なにもしない else #ファイルが存在しない test.txtを作成 処理1 test.txtを削除 end 日本語ばっかりで申し訳ないのですがこんな感じです。 今はifを使ったのですがそれ以外の方法でもかまいません。 できればサンプルのプログラムを載せていただけるとありがたいです。 ご教授をよろしくお願いします。 利用環境 Windows XP Home Edition cygwinをインストールしてrubyを実行しています 特定のディレクトリから特定のディレクトリへファイルを移動するバッチ処理 特定のディレクトリから特定のディレクトリへファイルを移動するバッチ処理 WindowsOSにおいて、たとえば、ディレクトリA、ディレクトリBがあり、 ディレクトリAの中に入っているファイルやディレクトリをすべて、 ディレクトリBに移動する、というようなバッチ処理があれば その書き方を教えてください。 意味不明でしたら加筆しますのでよろしくお願いします。 chmodコマンドで、あるディレクトリ以下の"*.sh"ファイル全てに chmodコマンドで、あるディレクトリ以下の"*.sh"ファイル全てに実行権限を与える方法を教えてください。 rubyでプログラムを作っていますがうまくいきません。 rubyでプログラムを作っています。 予想通りの動きができないです。 常駐ソフトを起動したり終了したりするプログラムをrubyで作りたいと思っています。 バッチファイルで作れば問題ないのですが、今回のプログラムを他で作っているrubyのプログラムに使いたいからrubyで作りたいんです。 そこでとりあえずrubyでソフトを起動したり終了したりする小さいプログラムを作って試しています。 ですが全然ひらめかないのでぜひご教授をお願いします。 利用環境 Windows XP Home Edition Cygwinをインストールしrubyを実行しています。 ディレクトリ内の全ファイルをオープンする方法 特定のディレクトリ内に存在する全てのファイルを順次オープン・クローズするプログラムを作成したいと思います。 例えば、特定のディレクトリに下記のファイルがあるとします。 A.txt B.txt このときにA.txtをオープンし内容を読み込みクローズし、次にB.txtを同じようにオープンし内容を読み込んでクローズするプログラムです。内容を読み込んで処理する部分は問題なく、また上記のように存在するファイルが決まっていれば何も問題はないのですが、下記の場合にはどのように存在するファイルを探せばよいのかがわかりません。 ・何ファイルあるかわからない ・存在するファイルは必ずテキスト ・ファイル名は決まっていない(perlで問題なく読み込めるファイル長) なお、特定のディレクトリに存在するファイルを順次全て読み込めればよいので、その読み込む順番にこだわりはありません。 どうぞよろしくお願い致します。 AIは使う人の年齢や市場にも影響する?人工知能の可能性 OKWAVE コラム ディレクトリ全てのファイルを読み取るには? フリーのCGI掲示板を使ってます。ディレクトリ内に複数のログファイルがあるので、一括して編集・削除ができるように管理部分を改造したいのでアドバイスをお願いします。 一応、readdir関数でディレクトリ内にある全てのファイル名を取得でることは分かりましたが、open関数で全てのファイルを読み取らせる方法がわかりません。 open DIR "./log"; @files = readdir DIR; close DIR; #以下、オリジナルのソースです。 open(IN,"$logfile") || &error("Open Error: $logfile"); while (<IN>) { my ($no,$dat,$nam,$eml,$sub,$com,$url,$hos) = split(/<>/); #途中略 } close(IN); ディレクトリ探索プログラム ディレクトリを探索していき、ファイル一覧を表示していくような機能が欲しいのですが、自分でプログラムしたくてもどのように始めればよいのかわからず困っています。後々プログラミングの勉強にも使いたいですのでサンプルのプログラムなどがあれば見せていただきたいです。 できれば C もしくは C++ が希望です。 具体的な内容としましては、 『パソコンのCドライブなどから始めて、その中にあるディレクトリとファイル一覧を表示して、ディレクトリが存在すればその中に入り、またファイルとディレクトリの一覧を表示する。それを繰り返して行き、一番下まで行ったら、ひとつ上の階層に戻り同じことを繰り返す』 という感じです。再帰的なプログラムだと助かりますが、他にもよい方法があれば教えていただきたいです。 宜しくお願いします。 find 指定ディレクトリ以下のファイル数をディレクトリ毎に表示させたい ■前提例 ./public_html/rails/modules/abcde/cache/hoge/file1 ./public_html/rails/modules/abcde/cache/file2 ./public_html/ruby/modules/wiki/private/cache/file3 ./net/cache/file4 ./n/abcde/cache/file5 : 以下略 ■期待しているのは、下記二つのディレクトリを検出し、かつそのディレクトリ以下のファイル数を、ディレクトリ毎に表示させたいのですが、 2./public_html/rails/modules/abcde/cache/ 1./n/abcde/cache/ : もしくは、 2./public_html/rails/modules/abcde/cache/hoge/file1 2./public_html/rails/modules/abcde/cache/file2 1./n/abcde/cache/file5 : ■実際に下記コマンドを実行すると、 find . -type f -regex '.*/abcde/cache/.*' -print | wc -l 4503 という数値(恐らくファイル数?)が返ってくるのみです。 ググッてみて、 find . -type f -regex '.*/abcde/cache*/.*' | xargs wc -l find . -type f -regex '.*/abcde/cache/.*' -print | xargs wc -l find . -type f -regex '.*/abcde/cache/.*' -exec wc -l \{\} \; とか色々試してみたのですが、 恐らく行数?が表示されるようで、自分が期待した結果を得ることが できません。 条件で検出したディレクトリ以下のファイル数を、ディレクトリ毎に表示させるには、 どうしたらよいのでしょうか。 {Ruby}ディレクトリ内の全てのファイルを操作 こんばんは。 最近Rubyでファイルのスクローリングをしているのですが、 以下のようなスクリプトを全てのファイルに適用したいと考えています。 1 fpath = '/home/edinet/E30479/S1002D1W/index.html' 2 3 text = "" 4 5 6 File.open(fpath).each do |f| 7 f.each_line do |line| 8 9 line.gsub!(/前事業年度特定投資株式/,"前事業年度") 10 line.gsub!(/当事業年度特定投資株式/,"当事業年度") 11 12 end 13 end 14 15 16 flag = nil 17 IO.foreach(fpath) do |line2| 18 19 case line2 20 when /保有目的が純投資目的以外/ 21 flag = true 22 when /保有目的が純投資目的/ 23 flag = false 24 end 25 26 text << line2.chomp if flag == true 27 end Dir.globなどを使えば良いと思うのですが、具体的にはどのように記述すればよいのでしょうか? ご教授の程お願い致します。 【Ruby】Protectedの確認プログラム こんにちは、Ruby初学者です。 以下の問題が解けずに困っています。「protectedが、メソッドをクラス内部から使えるようにする。また、同一クラス内ではインスタンスメソッドとしても使えるようにする。」という教科書的な内容は理解しているつもりでプログラムを書くのですが、どうも上手くいきません。 ヒントだけでも構いませんので、諸兄姉の知識をお貸しいただければ幸いです。 「protectedと宣言されたメソッドは、そのメソッドが定義されているクラスのサブクラスで定義されているメソッドから、メッセージの送信元とは異なるオブジェクトに対しても呼び出せることを確認するプログラムを作成し、結果を説明せよ。」 よろしくおねがいいたします。 ディレクトリ名をショートファイル名で知る方法は? こんにちは。 Windows9xなどにおいて、 C:\Program Files\TTERMPRO のように、ディレクトリ名をロングファイル名ではなく、ショートファイル名で書きたい場合というのが出てくることがあります。(バッチファイルを作成しておくなどの時) (例の場合には c:\progra~1\ttermpro になるのかも知れない) DOS窓で dir/s のような見方でファイルではわからなくもないのですが、ディレクトリを知る方法やコマンド等があればアドバイスいただきたく思っています。 ファイル名やディレクトリ名で使えない文字がいくつかあるようですが、それは何ですか? ファイル名やディレクトリ名で使えない文字がいくつかあゆようですが、それはどんな文字なのかを全てお教え下さい。 delphi5でのディレクトリ内ファイル名の取得 こんにちは。質問があります。 delphiのアプリケーションであるディレクトリのフォルダ内のファイルを 別のディレクトリのフォルダ内に名前を変えてコピーしようと考えています。 基本的にコピー元のディレクトリ名はわかりません。 コピー先のディレクトリは存在しなければ、名前を指定して作成し、その中に名前を変更したファイルを格納する流れです (わかりづらいかも・・・) フォルダが存在しなければ作成したり、ファイル名を変更してコピーする のはわかったのですが、コピー元のディレクトリ内のファイル(もしくはディレクトリ)名を取得することがわかりません。 全てソースの中でプログラムしたいと考えています。(VCLは使用しない) こんなんでもわかっちゃったりする方がいらっしゃいましたら、 どうか愛の手を・・・ 注目のQ&A 「You」や「I」が入った曲といえば? Part2 結婚について考えていない大学生の彼氏について 関東の方に聞きたいです 大阪万博について 駅の清涼飲料水自販機 不倫の慰謝料の請求について 新型コロナウイルスがもたらした功績について教えて 旧姓を使う理由。 回復メディアの保存方法 好きな人を諦める方法 小諸市(長野県)在住でスキーやスノボをする方の用具 カテゴリ [技術者向] コンピューター プログラミング・開発 Microsoft ASPC・C++・C#CGIJavaJavaScriptPerlPHPVisual BasicHTMLXMLCSSFlashAJAXRubySwiftPythonパフォーマンス・チューニングオープンソース開発SEOスマートフォンアプリ開発その他(プログラミング・開発) カテゴリ一覧を見る OKWAVE コラム 突然のトラブル?プリンター・メール・LINE編 携帯料金を賢く見直す!格安SIMと端末選びのポイントは? 友達って必要?友情って何だろう 大震災時の現実とは?私たちができる備え 「結婚相談所は恥ずかしい」は時代遅れ!負け組の誤解と出会いの掴み方 あなたにピッタリな商品が見つかる! OKWAVE セレクト コスメ化粧品 化粧水・クレンジングなど 健康食品・サプリ コンブチャなど バス用品 入浴剤・アミノ酸シャンプーなど スマホアプリ マッチングアプリなど ヘアケア 白髪染めヘアカラーなど インターネット回線 プロバイダ、光回線など