1 名前:デフォルトの名無しさん [2010/03/04(木) 11:00:57 ] プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。 ★注意★ Ruby 1.9.1 は初心者にはまだ時期早尚です。初心者には Ruby 1.8.7 を強くお勧めします。 (理由:現時点では有名ライブラリやアプリが 1.9.1 に完全には対応していないためです) 1.8.7 でも 1.9 系に導入された新機能のいくつかが利用可能なため、1.8.7 を習得すれば将来スムーズに 1.9 系に移行できるでしょう。 関連スレやURLは>>2-5 あたりを見てください。Ruby on Rails の質問は Webプログラミング板の Rails スレへ。 ■質問する人へ 質問する前に次の3つをすること。ここで回答を待つよりそのほうが早い。 ・モジュール名やエラーメッセージでググる ・マニュアルで引っかかったクラスの記述を探す www.ruby-lang.org/ja/man/ ・FAQを一応読む www.ruby-lang.org/ja/man/?cmd=view;name=Ruby+FAQ 質問には以下を書くこと。へたくそな質問は再提出を要求される。 ・詳しい内容(「動きません」「うまくできません」では回答しようがない) ・エラーメッセージ(自力で訳さずなるべくそのままで) ・実行環境(OS名、Rubyのバージョン(ruby -v でわかる)) ・最終的にやりたいこと(もっとよい方法がある場合が多いので) 回答してくれた人には「ありがとう」のひとことをいってあげて。 ■回答する人へ 相手は初心者、根気よく育てるつもりで。質問がへたくそなのも大目にみてあげる。 それができないならこないこと(だって初心者スレだもん)。 ・既出な質問やFAQは「XXXを読め」でいいので、叩かない&怖がらせない。 ・わけわかな質問にもエスパー発揮で。できれば質問の仕方を教えるぐらいで。 ・自信がない回答ならその旨表明すること。誤った回答は初心者じゃ見抜けない。
441 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 08:44:47 ] 春休みで盛況だなw
442 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 11:49:30 ] moduleってパッケージとMixinを、実現するための予約語なんだよね Mixinは実装を持ったインターフェイスみたいなもんだから、 moduleはmoduleを継承する事ができるの?
443 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 12:18:51 ] >>438 乙乙!!
444 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 12:24:46 ] >>442 > moduleはmoduleを継承する事ができるの? そもそも文法的に継承できない(module M2 < M1 は SyntaxError) メソッド検索順位のひとつ上にモジュールをぶちこむ include を使う module M1; def m; "M1!"; end; end module M2; include M1; end # M2 の上に M1 module M3; include M2; end # M3 の上に M2 module M4; include M3; end # M4 の上に M3 class C; include M4; end # C の上に M4 p C.new.m p C.ancestors # 継承とインクルード込みの検索優先順位を表示 結果 "M1!" [C, M4, M3, M2, M1, Object, Kernel] 検索順位的には継承と同じなので実用上の問題はない class C1; end class C2 < C1; end class C3 < C2; end p C3.ancestors #=> [C3, C2, C1, Object, Kernel]
445 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 12:40:44 ] じゃあ継承でいいじゃん
446 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 12:46:49 ] >>445 よくねー 人間を継承した俺がいたとして、翼が欲しいと思ったら class 俺 < 翼 end するのか? 俺は翼の一種なのか? 俺は翼の子分か? 人間且つ翼の俺って何? 翼って機能だろ class 俺 機能追加 翼 end とするのが筋だろ、わかりやすいし、渾然一体になる継承よりは機能外すのも簡単そうだ だから翼はモジュールにして、includeで追加する 実際は 俺 = 人間.new(params) 俺.extend(翼) とするのが妥当ではあるがまあ細かいこと気にするな禿げるぞ
447 名前:442 mailto:sage [2010/03/14(日) 13:12:23 ] >>444 ,>>446 ありがとう >>445 なりすましっぽく見えるレスだな
448 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 23:18:08 ] ○引数で複数のディレクトリパスを与える ○与えられたディレクトリに対して再帰的にファイルを全て削除する ○ただし.txt拡張子が付くファイルのみ削除しない プログラミングに不慣れながらこんなスクリプトを書こうと思い、以下のようになりました。 #!/usr/bin/ruby require 'fileutils' ARGV.each do |i| FileUtils.rm(Dir.glob(i + '**/*[^(txt)]'), :force => true) end 突っ込みどころなどありましたら教えていただけないでしょうか。 簡単なテストをすると意図したように動くのですが少し不安なので質問させていただきました。 自分で怪しいと思ってる箇所は以下の2箇所です。 @ i + '**/*[^(txt)]' こんな指定の仕方でいいのだろうか AそもそもFileUtilを使うべきなのか 宜しくお願いします。
449 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 23:25:51 ] >>448 他のスレから飛ばされてきたなら、 飛ばされましたって書かないとダメだよ
450 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 23:39:50 ] >>448 死んでいいよ
451 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 23:41:46 ] Dir.globのワイルドカードはあまり知らんが(Windowsユーザーなもので) 否定形なのはRubyでやったほうが無難だと思う Dir.glob(i.sub(/\/?$/,'/**/*')).reject{|e| test(?d,e) or e =~ /\.txt$/i}
452 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 23:43:52 ] i ってなんだろう? そもそもグロブでいいのか。
453 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 23:45:01 ] require 'fileutils' noop = verbose = ARGV.include?(':noop') ARGV.each do |s| pathlist = Dir.glob(File.join(s, '**/*')) pathlist.delete_if{|path| File.extname(path) == '.txt'} pathlist.each do |path| FileUtils.rm(path, :force => true, :noop => noop, :verbose => verbose) end end $ ruby ./del.rb tgtdir :noop
454 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 23:45:48 ] *[^(txt)] は、 最後の文字が 開き括弧 でも t でも x でも t でも(アゲイン) 閉じ括弧 でもない という意味になるんじゃないか?
455 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 23:48:11 ] >>453 next ですっ飛ばしていいと思う require 'fileutils' noop = verbose = ARGV.include?(':noop') ARGV.each do |s| Dir.glob(File.join(s, '**/*')).each do |path| next if File.extname(path) == '.txt' FileUtils.rm_r(path, :force => true, :noop => noop, :verbose => verbose) end end
456 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 23:48:38 ] >>454 それはない
457 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 23:56:02 ] $ ls x.c x.doc x.tex x.txt $ ruby -ve 'p Dir.glob("*[^(txt)]")' ruby 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0] ["x.c", "x.doc"]
458 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 23:57:18 ] はいはい勘違いゴルファーは帰ってね
459 名前:デフォルトの名無しさん mailto:sage [2010/03/14(日) 23:58:40 ] [^(txt)]を検証しただけじゃね?
460 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 00:00:42 ] マニュアル嫁でよくね?
461 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 00:01:32 ] どっちでもいいよ…
462 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 00:04:39 ] ここは初心者スレだろ? テンプレ読めない奴はカエレ 暴れるなら本スレでやr
463 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 00:05:49 ] 検証が漏れてないかどうかはどうやって検証すればいいのかという
464 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 00:11:10 ] >>458 どこをゴルフと誤認したのか気になる。
465 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 01:18:47 ] rmdir -rで綺麗さっぱり消せばいいのにw
466 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 01:54:20 ] RubyをWindowsで開発環境構築する方法教えてください。 OSはWindows7です
467 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 01:55:11 ] 開発環境ってたとえばなーに
468 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 02:22:10 ] >>448 「再帰的」と書かれていますが、別に find を使うような要件ではなく 引数のディレクトリ直下のみ走査すればよさそうなので、こんなかんじ ではいかがでしょうか。 require 'pathname' ARGV.each do |d| Pathname(d).children.each do |f| f.unlink unless f.extname == ".txt" end end # Pathname は標準添付ライブラリだから使ってもいいよね ところで、Ruby に限らず Perl でも Python でも glob ってシェルの ワイルドカード展開のエミュレートだと思いますが、機能としては中途半 端(文字列の単純比較 < glob < 正規表現活用)ですし、プラットフォーム 毎に微妙な挙動差も考えるとムダにドツボにはまりそうですし、(少なく とも「初心者」は)あまり積極的に使わない方がよくない?
469 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 02:33:02 ] >>468 書いてるあなたがすでにglobの罠にはまっているという。 再帰的に走査したいんだよ。> **/
470 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 02:42:35 ] Dir.glob('**/*') は許容されるべき というか普通はこれしか使わない 残りは返ってきた配列に入った文字列を正規表現とかでどうにかする 短く1行で書かないと家にいる妻がスナイパーに撃たれるとかそういう時にのみグラブ条件を書く
471 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 04:18:21 ] 1行記述を強要する妻かw
472 名前:468 mailto:sage [2010/03/15(月) 05:11:59 ] >>469 うへ、自分がドツボにはまっていました、というか **/* の意味を 知らんかった orz >>470 を参考に Pathname.glob でも使えばよいのでしょうが、あえて Find 利用ということで: require 'pathname' require 'find' Find.find(*ARGV) do |f| t = Pathname(f) t.unlink if t.file? and t.extname != ".txt" end
473 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 05:24:32 ] >>471 強要しているのはスナイバーかと。>>470 は愛妻家なんですね。
474 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 08:55:46 ] いや恐妻家なんだろうw
475 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 09:57:07 ] 要求を呑まないと何も知らない家族が射殺されるというのはわりとポピュラーな展開かと グラブ文字処理はメソッド独自だから、明白な全抜き出し以外は正規表現などを駆使、という方向性は妥当 グラブ処理の時点で小細工すると後々遺恨になるぞ
476 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 10:41:36 ] なるほど
477 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 12:43:17 ] >>466 まずはテンプレくらい嫁よ ・ActiveScriptRubyをインスコ ・るびまのchmをダウンロード ・NetBeans IDE(統合開発環境)をインスコ これでなんとかなるだろ。Rails開発ならcoLinuxかPortableUbuntu入れろ。
478 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 12:44:12 ] >>466 あ、あと、c:\Program Files\以下にはRubyをインスコしない方がいいみたい。 RubyGemsが動作しないとかの報告があった (今のバージョンはどうかしらん)
479 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 12:53:05 ] ねこび〜ん勢力の工作を検知しました
480 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 13:02:44 ] Windowsでも、XPなら c:\usr\local\ruby とかにインストールした方が精神衛生上よろしい気がする UACとか入るとそう簡単にはいかないんだろうけど
481 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 13:17:04 ] >>479 ねこび〜んはダメだね コードの補完が遅すぎて使えない
482 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 13:35:16 ] ActiveScriptRubyはデフォルトのインストール場所が性善説に過ぎる ttp://d.hatena.ne.jp/kitamomonga/20100202/ruby_watir_crash_with_autoitx3 まあこれは間違えるほうが悪いんだけれども
483 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 14:06:24 ] array = [1,2,3,4,5]とすると配列ができますが、わかんなくなりませんか? javaとかだったら、IDEが配列だよって教えてくれるけど やっぱり、最初にこうするべきなんですかね? array = Array.new
484 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 14:20:31 ] >483 ならない Array.new はリテラルに比べると遅い。
485 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 14:21:39 ] >>477 >・るびまのchmをダウンロード リファレンスchmならASRに同梱されてたはず それと初心者スレでるりまとは呼ばない方がいいよ
486 名前:483 mailto:sage [2010/03/15(月) 14:27:49 ] >>484 そうですか ありがとうございます
487 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 14:44:11 ] a = [1, 2, 3, 4, 5] はわけわかんなくならないが hogedata = [] は hogedata = {} との区別がわけわかんなくなることはある ので、そういうときは hogedata = Array.new と書くことはある 要素が入ってれば配列なのか Hash なのかは一発なのでわざわざ初期化なんてしない
488 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 15:14:22 ] >>485 > それと初心者スレでるりまとは呼ばない方がいいよ なんで?
489 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 16:05:56 ] というかるりまるびまってなんですか?
490 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 16:18:20 ] ここは大喜利すべきか
491 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 16:21:11 ] まあ、マニュアルという認識でいいよ chm形式のマニュアル読んでれば十分
492 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 16:24:11 ] >>488 マイナーな専門用語は避けるべき。初心者スレだし。
493 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 16:25:13 ] >>488 まさにこの流れが理由 るびまと区別がついてないならなおさら
494 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 16:50:12 ] 何やら貢献できたようで何より 1.9.1は初心者向けじゃなかったのかー 今まさにダブルクリッコするところだったぜー ここに来てよかった ってことでActiveScriptRubyなるものをダウソしてきます
495 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 16:51:41 ] ここIDないのね 494は489の人てことでw
496 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 17:31:53 ] 質問です エクセルで書かれた名簿を整理して出力するプログラムを書いているのですが、 名前、郵便番号、住所の分離が上手くいきません 与えられた名簿は半角or全角スペースで区切られているのでsplitを使おうと試みているのですが、 例えば以下のように記述すると"―"や"県"が消えてしまいます puts '山田 太郎 〒0000−0000 山田県山田333-333-333-333'.split(/[ 〒]+/) 何か良い知恵があればなにとぞご教授お願いします ちなみに元のプログラムではputsせず、分離後にある配列に入れています
497 名前:496 mailto:sage [2010/03/15(月) 17:34:18 ] 追記失礼します rubyはver1,87を使用しております
498 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 17:48:49 ] >>496 Excelってことなので、WindowsでSJISのソースコードとして、 スクリプトの先頭に #! ruby -Ks もっと推奨の方法があったかもしれない
499 名前:496 mailto:sage [2010/03/15(月) 17:51:44 ] >>498 ご教授いただいたとおりにしたところ速やかに改善されました! ありがとうございます
500 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 17:53:59 ] Rubyが取り扱う文字のエンコーディングを指定しなければASCIIとして扱われてしまうのでそういうことになる Ruby 1.8まででは 1 Ruby起動時にスイッチで -Ks とかで指定する 2 スクリプト先頭に #!ruby -Ks とか書いておくとスクリプト実行時にそのスイッチが考慮される 3 $KCODE を設定する 4 個々の正規表現のオプションでエンコーディングを指定する ただし1,2はスクリプト自体のエンコーディングと正規表現の振る舞いの両者を変更するが 3,4だと正規表現の振る舞いを変えるだけなので スクリプトがシフトJISで書かれていると p "表" # エンコーディングを正しく指定しないと 文字列リテラルが終了してないことに("\225\" と同じ扱い) とかのいわゆるダメ文字(2バイト目が\)問題にぶち当たる UTF-8やEUC-JPだとそのような問題は起きない(のかな?)
501 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 18:05:26 ] るびまってRubyのマニュアルのことだったの? Ruby Magazineの事だと思ってた
502 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 18:15:09 ] >>491 どもです 礼するの忘れてやした
503 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 18:16:09 ] るびま:Rubyist Magazine るりま:Ruby reference manual Ruby Magazineだと思いこんでると、無関係な記事が多すぎるように映るかもね
504 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 18:16:29 ] >>501 どっちでもいいよ いやよくはないが 初心者的にはるびまは読むべきではない 古くて有害な情報が渾然一体となっている
505 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 18:19:31 ] >>503 それ、テンプレに入れたらどうかね?
506 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 18:24:13 ] Rubyinstか。失礼。 上のほうよく見たらるびまとるりまの区別が付いてない(人がいる)って話だったのね 読み違えてたわ
507 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 18:27:44 ] まだ間違ってるぞw
508 名前:496 mailto:sage [2010/03/15(月) 18:29:54 ] >>500 亀ですが、ありがとうございます これを気に文字コードにも意識を向けてみます
509 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 19:16:01 ] くっ Rubyist
510 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 19:51:11 ] includeは名前空間を使えるようにするものってことで、おk? C++@namespaceみたいな感じ
511 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 19:53:43 ] なんというか include はふつうに include だと思うのだが 既存言語の機能になぞらえないと理解し難いほど複雑難解な概念なのだろうか
512 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 20:00:50 ] includeの動作的には本当に>>444 だよね メソッドを探す順番の指定をする方法のひとつ
513 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 20:07:50 ] モジュールの存在理由のほうがムズカシイかもしれない
514 名前:510 mailto:sage [2010/03/15(月) 20:34:24 ] 読んでいた記事が間違えていたらしい 本当の使い方は、結局なんなんだろ? Mixinを実現するためにしか使わないのか
515 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 20:39:59 ] モジュールは、メソッドを用途ごとにまとめるためのしくみ メソッドがあるだけで、オブジェクトには依存しない機能のカタマリ 共通の機能をメソッドから追い出して別途メソッドを作るのと同じように、 共通の機能をクラスから追い出して別途モジュールを作る(でincludeする)というのも妥当
516 名前:デフォルトの名無しさん [2010/03/15(月) 20:45:11 ] Mixinのためと単なる名前空間のため両方に使われる
517 名前:510 mailto:sage [2010/03/15(月) 20:54:21 ] >>515-516 thx
518 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 22:17:04 ] プロパティも実装されていない糞言語
519 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 22:27:30 ] それで遊んでくれるのはPythonスレぐらいだぞ ここは意外とDRY
520 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 22:52:35 ] クラスインスタンス変数とは、そのクラスオブジェクトの特異クラスに属する インスタンス変数という理解で正しいですか?
521 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 23:00:11 ] ごめん、さっき違うスレで質問したけど理解してなかったorz 3 class Hoge 4 def self.set 5 @hoge = "dynamic" 6 $hoge = "static" 7 end 8 9 def self.out 10 puts @hoge 11 puts $hoge 12 end 13 end 14 15 Hoge.set 16 Hoge.out 実効結果 dynamic static $hogeと@hogeって何が違うのさ?
522 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 23:12:55 ] 理解してたらああは言わん クラスインスタンス変数はクラスオブジェクトが存在する限り存在する Hoge と書くことで定数 Hoge に Class クラスのインスタンスが Ruby によってセットされる (同名のクラス定義がなかった場合は定数とみなされ、事前に代入されてない未定義定数でエラー) で、Hoge.set を実行することでインスタンス変数 @hoge がインスタンスの中でふつうに設定される それが属するインスタンスとは Class クラスのインスタンスで、つまり定数 Hoge が指すものだ だから、無理矢理 Hoge の内容を nil にするとインスタンス変数 @hoge はスコープごと失なわれる irb> class Hoge; def self.set; @hoge='hoge'; end; end irb> Hoge.set irb> p Hoge.instance_variable_get(:@hoge) "hoge" irb> Hoge = nil (irb):4: warning: already initialized constant Hoge irb> p Hoge.instance_variable_get(:@hoge) nil
523 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 23:22:49 ] 特異メソッド上で書くからわかりにくい? class Hoge @hoge2="hoge2" end p Hoge.instance_variable_get(:@hoge2) は "hoge2" を返すよ
524 名前:デフォルトの名無しさん mailto:sage [2010/03/15(月) 23:38:33 ] "プログラミング言語 Ruby" のp.326のなかほどに クオート文字列にマッチすることを意図した正規表現の例が以下のように 載ってるんだけど,文字集合内で番号指定後方参照ってできたっけ? /(['"])[^\1]*\1/ わがRuby1.9.1ではこうなった re = /(['"])[^\1]*\1/ p %('\1')[re] #=> nil p %('hoge'hoge')[re] #=> "'hoge'hoge'" いちおう念のために言っておくと クオート文字列にマッチする正規表現を求めているわけじゃなくて 文字集合内で後方参照や部分式呼出しができるか否かの確認ね
525 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 00:23:29 ] >>457 が何でそうなるのか解説求む
526 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 00:27:01 ] >>525 >>454
527 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 00:28:31 ] globってワイルドカードでも正規表現でもないのか なんでこんな面倒なもん作ったんだ
528 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 00:31:15 ] いや、zshの**を取り込んでるくらいで、 ワイルドカード(UNIXシェルの、だが)だよ。
529 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 00:31:34 ] ああ勘違いしてたわ txtだけはじかれてるのかと思った
530 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 00:32:09 ] ほぼワイルドカードじゃね?
531 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 00:32:50 ] あら遅レス失礼した
532 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 00:33:41 ] globにlsコンパチの引数受け付けるようにしてくれ
533 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 00:34:20 ] >>532 UNIXで誰がファイル名展開をやってるか知ってるかい?
534 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 00:44:33 ] えっ? 誰かがやってるなんてことあるわけないでしょう?
535 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 03:16:47 ] echo *
536 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 03:27:47 ] もうshellの機能をrubyに組み込むべきだなw login shellを/bin/rubyshにできていいかもしれないw
537 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 07:53:49 ] RubyShell って面白そうだな。 誰も使わないだろうけど。
538 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 07:55:47 ] RashだかRushってシェルがなかったっけ
539 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 08:46:18 ] イラネ
540 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 09:30:18 ] とある人のウェブページに、perlをログインシェルとして使ってみた報告があるぞ。 一度読んでおくといい。
541 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 09:33:51 ] いやRushが既にあるから