1 名前:名無しさん@お腹いっぱい。 [2007/02/15(木) 14:28:44 ] シェルスクリプトの総合スレです。 スクリプトのお勉強・自慢・腕試しなどにどうぞ。 まずは注意点、リンク、地鎮祭など(>>1-6 くらい)をご覧ください。 □お約束 ・特記なき場合はBourne Shell(/bin/sh)がデフォルトです。 bash/zsh/ksh/ashなどに依存する場合は明示しましょう。 Linuxユーザは/bin/shの正体がbashなので特に注意。 ・csh/tcshのシェルスクリプトは推奨されません。 (理由は「csh-whynot」でググれ) ・UNIXにはシェルスクリプトに便利な小さなコマンドがいろいろあります。 manや参考リンクを見ましょう。 aproposないしはman -kでそれらしい単語による簡単な検索もできます。 ・シェルスクリプトのことをシェルってゆーな ・シェルで使えるワイルドカード等は正規表現ではありません。 正規表現の話題はスレ違い(正規表現スレへ) □初心者へのアドバイス: ・適した道具を判断するのも頭の重要な使い方。シェルスクリプトよりも RubyやPerlの方が適した仕事には素直にそちらを使いましょう。 ・知らないコマンドが出てきたらmanを引きましょう。 ・思い通りに動かないときは、まずは sh -x でトレースしましょう。 前スレ シェルスクリプト総合 その7 pc10.2ch.net/test/read.cgi/unix/1157601611/
618 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/16(土) 19:53:08 ] >>614 perl を使う
619 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/16(土) 20:02:27 ] まずはファイルサイズで比較すればいいのに
620 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/16(土) 20:11:47 ] 粗く分けるのにmd5なんか使わんでも。 >>619 の通りファイルサイズが手軽だし、もし同じサイズで内容が違うものが 沢山ならファイル中の適当なところをhexdumpでもいいんじゃないの。
621 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/16(土) 20:37:43 ] 横から済まぬが >>619 ,620 >> ${tempfile_prefix}2_filesize_onajiyatu って書いてあるから、そもそも同じサイズ限定ではないのか?
622 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/16(土) 20:40:36 ] 同じファイルサイズのものだけでも1000ファイルもあるって、 結構集めまくったね、絵炉動画をw
623 名前:名無しさん@お腹いっぱい。 [2007/06/16(土) 21:03:28 ] >617,618 perlか・・・ついに手を出すときが来たか >619,621 失礼しました。サイズ比較をあらかじめこんなのでやってます。 ls -l "$@" | sed 's/ \+/ /g' | cut -d ' ' -f 5,8 > ${tempfile_prefix}1_filesize_all awk '{ if(a[$1,0]==0){a[$1,0]=1;a[$1,1]=$0;} else{if(a[$1,0]==1){print a[$1,1];} a[$1,0]++;print $0;} }' \ ${tempfile_prefix}1_filesize_all > ${tempfile_prefix}2_filesize_onajiyatu >620 ためしに512byteのgomi.txtを作ってみて、以下試しました。 %time (for i in `seq 1 1000`; do cat gomi.txt > /dev/null 2>&1 ; done;) -> 1.486sec %time (for i in `seq 1 1000`; do md5sum gomi.txt > /dev/null 2>&1 ; done;) -> 1.510sec これくらいのサイズだと処理内容はあまり影響なさそうです。 md5sumの方が比較しやすかったのです。 >622 いやいや、得ろ動画とか1000個とか例えばの話ですよw
624 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 00:32:06 ] >>614 まずは、ファイルサイズではじいたら?
625 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 00:34:24 ] すまん。@bitwarpなもんで、更新漏れだった。 忘れてくれ
626 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 03:14:21 ] xargsでもつかえば?
627 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 04:00:08 ] 気が向いたんでやってみた $ time (for f in tmp/*; do dd if=$f bs=512 count=1 2>/dev/null | md5sum; done) 065d30715dcffa21596406373a9124ac - ...中略... ed4cf7b8f209f9ce630b5e76219357ae - (; for f in Desktop/*(.); do; dd if=$f bs=512 count=1 2> /dev/null | md5sum; ) 0.09s user 0.38s system 49% cpu 0.960 total $ time perl -M'Digest::MD5(md5_hex)' -e 'for (@ARGV) { open F,"<$_"; read F,$a,512; print md5_hex($a),"¥n" }' tmp/* 065d30715dcffa21596406373a9124ac ...中略... ed4cf7b8f209f9ce630b5e76219357ae perl -M'Digest::MD5(md5_hex)' -e Desktop/*(.) 0.02s user 0.02s system 18% cpu 0.193 total
628 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 17:51:50 ] xargs使えって
629 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 20:19:20 ] 絵炉動画ファイルは、ファイル名にスペースとか特殊記号とか入りまくりである ことが多いため、xargsは全く持って不適当。
630 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 21:13:28 ] それならfor文やreadでも難しくならないか・・ まxargsのほうがもっと不適当なのだろうが
631 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 21:16:22 ] >>629 man xargs
632 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 21:24:09 ] >>631 は何がしたいんだろうか? まったく外してるわけだが、、
633 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 21:26:16 ] >>631 $ ssh solarishost man xargs
634 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 21:33:38 ] ファイル名の問題以前に、個々のファイルごとに頭の512バイトを切り出したいわけ だから、xargs使ったところでプロセス起動数は節約できない。 よって、>>626 >>628 は全く的はずれ。
635 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 21:34:10 ] >>632 はずしているのはお前の方。 find 〜 -print0 | xargs --null
636 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 21:47:33 ] >>635 はずしているのはお前の方。 -print0 や xargs --null は、一般には使えない。(たとえばSolaris) あと、>>634 が指摘してるように、今回の件は xargsでは解決しない。 よって、そういう意味でも外しているのは >>635 の方。
637 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 22:10:53 ] -print0で喜んでるのは石器人。 現代人はふつー find ... -exec ... +
638 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 22:21:02 ] >>632 から某頭の悪い粘着君臭がする。
639 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 23:03:19 ] て言うか、プロセス起動数が云々と言うなら md5sum を改造するなり、 ファイル名の取得からハッシュの計算までやるようなアプリ作ればい いじゃん。
640 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 23:14:55 ] >>617-618 で既に正答が出てるの何を今更…
641 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/18(月) 00:13:31 ] 答えそのものも>627に出てるわけだが...
642 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/18(月) 00:36:28 ] #find ... -exec ... + 横レスだが知らなかった ってか手元のmanにはない
643 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/18(月) 03:34:11 ] 最後の「+」ってなに?
644 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/18(月) 08:19:20 ] xargsは同じプロセスを連続起動するから 工夫されていると聞いたことがある。 これは事実?
645 名前:名無しさん@お腹いっぱい。 [2007/06/18(月) 15:14:11 ] 基礎的な質問ですいません。 bashで、シェル変数に値を突っ込み -zで存在を確認する手法ですが、 if [ -z $test ] ; then echo "val exist" else echo "val isn't exist" 質問 1.[ -z $test ] と書くのはよろしくない? 2.[ -e $test ] とすると、シェル変数が存在しない時に真、 シェル変数が存在する時に偽となるのはなぜ? 結構、このパターンで利用してたのですが、2.の動作を確認すると、 なぜだか逆になっているような。じゃ、-zもよろしくないのかなぁ、と ところで、みなさんは、環境変数やシェル変数の存在確認をどうやってますか? 宜しくお願いします。
646 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/18(月) 15:23:43 ] >>645 まず、[ ] の中ではシェル変数は基本的にダブルクォートを付けること。 [ -z "$test" ] とする。この場合、$testがセットされていれば偽になる。 これだと真偽が逆になってわかりにくいので、 [ -n "$test" ] または -n は省略できるので [ "$test" ] とする。 [ -e $test ] は、$testがセットされていない時、[ -e ] となってしまい、 これは、"-e" という文字列がサイズゼロかどうか(この場合は2バイト)という 判定がなされるため、$testがセットされていないと真になる。 一方、$testがセットされていると、今度は -e は -eオプションとして解釈され、 $testの中身がファイル名とみなされるため、そんなファイルがなければ偽になる。 更に言うと、-e は Bourne shでは使えないため非推奨。
647 名前:名無しさん@お腹いっぱい。 [2007/06/18(月) 15:39:39 ] >>646 ありがとうございます。 うーーん、なるほど。1行目でよく分かりました。
648 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/18(月) 16:11:12 ] 丁寧に説明してもらった理由を理解したのかしてないのかよくわからん回答だな
649 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/18(月) 16:12:07 ] このあたりものこともあって zsh で手抜きスクリプト書くことが多くなった
650 名前:名無しさん@お腹いっぱい。 [2007/06/18(月) 16:24:47 ] >>648 舌足らずですみません。 1行目で自分の間違いを気付き、 詳しい説明をしていただいたので助かりました、と書きたかったところでした。 -eオプションの非推奨コメントは特に助かります。
651 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/18(月) 21:09:56 ] ______ / ))) / /// /―――-ミ / 彡彡 // / ヽ)) / 彡彡 iiiiiiiiiiiiiii iiiiiiiiii| / 彡彡 < ・ > 、<・ >l / | ヽ 〉 / ( | | __) | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ / | ≡ /, ――― |ゝ < 馬鹿共にshellを与えるな! / | | L ___」 l ヾ \_________ _ミ l ______ノ ゞ_ | l ヾ ー / | l | | \ー ‐/ | |
652 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/19(火) 08:10:33 ] >>646 >>更に言うと、-e は Bourne shでは使えないため非推奨。 ?????
653 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/19(火) 08:30:50 ] >>652 教えて欲しいんなら「???」じゃなくて、ちゃんと日本語で書け。初心者君。
654 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/19(火) 09:19:43 ] ところで-eがないshが標準で載ってるOSってどれ?
655 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/19(火) 09:36:14 ] Solarisとか。SCOとか。Tru64とか。
656 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/19(火) 11:36:15 ] >>655 今では使われていないOSばかりですね。じゃあ、-e使ってもいいですねw
657 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/19(火) 11:45:45 ] つっ、釣られないぞ
658 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/19(火) 13:41:51 ] >>653 では日本語で書かせていただきます。 私が学習に使用している O'REILLY の「詳解シェルスクリプト」によりますと、 /bin/sh 組込の test コマンドに於ける -e 表現は標準的なものとして記述され POSIX で定義している旨明記されております。また更に今回の議題の発端である >>645 質問子の環境と共通する bash 等での独自の拡張に付いて記述した件では、 条件判定構文中の -a 演算子について(非推奨です。 -e を使いましょう) とまで明記されているものを、使用者の環境の多用性や使用目的の別など勘案せず 一言の下に「非推奨」と断定できる根拠を教えてください。 お願いします。
659 名前:646じゃないけど mailto:sage [2007/06/19(火) 13:47:32 ] >>658 「Bourne shでは使えないため」って書いてあるじゃん。 それが重要かどうかは各自が判断すればいいこと。
660 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/19(火) 13:51:15 ] >>658 POSIXは理想論ばかりで、現実に即してないんだよ。 いくらPOSIXでどうこう言っても、実際に動くかどうかがすべて。 test -e については、Solarisの/bin/shで動かないんだから、 OS共通のシェルスクリプトでは非推奨であるのは当然。 あと、別件で、-e の意味で -aを使ってはいけない(非推奨)なのはその通りだよ。 -a は別に ANDの演算子の意味があって、そちらの意味で使うべきだからね。 わかったら、今後は -e を使うなよ。今まで書いたシェルスクリプトで -e を使ってるのがあったら、気づき次第直しとけよ。
661 名前:658 mailto:sage [2007/06/19(火) 14:12:59 ] 予想通りの回答をどうもありがとうございました。 >>わかったら、今後は -e を使うなよ。今まで書いたシェルスクリプトで -e を使ってるのがあったら、気づき次第直しとけよ。 ご心配有り難うございます。 そもそも機能が曖昧過ぎて過ぎて使おうと思ったことも御座いませんw
662 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/19(火) 14:15:20 ] 予想してたなら聞く必要ないだろ……。 むだに波風立てんなよ。
663 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/19(火) 22:13:27 ] シェルスクリプトの互換性過敏症な奴っていじると面白いんだよ
664 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/19(火) 23:22:07 ] ここにもユトラーか・・・・
665 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/19(火) 23:28:40 ] >>663 export LANG=C とか書いてるのを見ると反応してしまうのは互換性過敏症ですか?
666 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/19(火) 23:56:18 ] いや寧ろ互換性を指摘できる人がいて有難い
667 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/20(水) 00:19:14 ] そんなこといって年寄りほめたらわらわらわいてくるぞ。 SunOS 3.5世代の俺なんかまだまだ甘ちゃんだ。
668 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/20(水) 05:31:28 ] 沸いてきてくれ それぞUNIXの面白さの真髄だわ
669 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/20(水) 09:12:11 ] 仕事では一緒になりたくねえけどなw
670 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/20(水) 21:45:49 ] ようするに、 POSIX が理想論で現実に即していないのは当然の話で、 現実がバラバラだから標準化が必要という理念が生まれたわけですわな。 で、各プラットフォームでそれぞれ POSIX に準拠する姿勢を示していながら どうしても譲れない仕様への拘りがあるから未だに移植性の問題が取沙汰される。 そこの処の理を語らずに、只単に○○では使える or 使えないという議論に 終始するというのは如何にも思慮が浅いと言わざるを得まい。
671 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/20(水) 22:08:39 ] 実社会ではそういうもんだ
672 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/20(水) 23:20:26 ] 携帯電話みたいなものだね いまだに携帯電話つかわないもうろくジジイとかいるかなw
673 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/21(木) 01:34:39 ] じじいじゃないけど使ってないよ。
674 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/21(木) 01:36:56 ] うわw
675 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/21(木) 01:38:49 ] 携帯電話使わない仕事というと、医者とかパイロットくらいか
676 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/21(木) 01:53:54 ] というか、どこが「携帯電話みたいなもの」なのかさっぱりわからん。
677 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/21(木) 03:01:35 ] 痴呆がはじまった?
678 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/21(木) 23:19:43 ] >>670 こだわりなんかないだろ、準拠するのが面倒なだけだよ。 準拠したからって売れ行きがたいして変わるわけでもないし。 >>675 院内では携帯は使わないけど緊急呼び出しが頻繁にあるような 医者もいるからなぁ。 パイロットは仕事中は使わないけど、そういう意味なら電車の 運転手なんかも同じだな。 て言うか、仕事中とか会社の中に限定すると携帯持たない/持て ない奴はそれなりにいるし。
679 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/22(金) 00:04:29 ] ケータイでも3G(高周波のやつ)は大丈夫らしいけど。
680 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/22(金) 09:16:46 ] 使えない奴にかぎって、くだらねえことに拘ってたりする
681 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/22(金) 20:12:44 ] そろそろUNIXの話にでも戻す?
682 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/22(金) 20:59:20 ] よしなに
683 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/22(金) 23:11:19 ] >>678 >>準拠したからって売れ行きがたいして変わるわけでもないし。 売行きが変わらないからって騒ぐこともないでしょ。 拘りがなければ準拠する方がはるかに楽なのにねぇ あくまで /bin/sh 標準なのは基本であって、実勢はケースバイケースで、 linux じゃ bash 標準だろうし、 solaris だって適宜 ksh なり使うだろうし、 パーソナルユースや $HOME/bin 限定使用とか、管理者でも同一プラット ホームだけでの運用が多く、移植性のプライオリティーがさほど高くない 現況において、やいのやいのいう奴は要するに「言いたいだけ」ちゃうんかと。
684 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/22(金) 23:53:48 ] > 拘りがなければ準拠する方がはるかに楽なのにねぇ 何が楽なのか詳しく書いて欲しいんだが。 商用ソフトってちょっと変えると、検証がスゲー大変なことぐらいは知ってるよな?
685 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 00:08:17 ] 楽しいもの見つけてしまった。 sed.sourceforge.net/sed1line.txt www.student.northpark.edu/pemente/awk/awk1line.txt 組込みで使っているLinuxにgrepが入ってなくて sedでシミュレートしたスクリプト書いたんだけど、 それ以上のことがいろいろできそうな感じなり。 おまけ www.fepus.net/ruby1line.txt
686 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 00:11:08 ] >>683 Solarisは古いshとkshを選択できるからいいけど、 HP-UXとかAIXは/bin/shはkshそのもなんで選択の余地はない。 シェルごときで移植性とか言ってるアホが多いっていうのは同意。
687 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 03:31:47 ] 視野が狭いのって、幸せでいいよね。
688 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 08:31:29 ] そう?いまどきシェルの互換性なんか気にしてる奴って幸せそうに見えないが。
689 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 09:38:27 ] シェルはさまざまなコマンドと組み合わせて使うしな。 コマンドにも完全な互換性がない以上、シェルスクリプトの互換性や移植性を気にし過ぎるのはアホ。 ささっと書いてテストして動きが変だったら、そのとき直せばいい。 シェルってそういうライトな使い方をするためのものでしょ。
690 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 10:04:55 ] 互換性のことも知らずに、暢気に [ -e file ] とか、export HOGE=hoge とか書いて、 「動いたからOK」とか言ってる香具師の方がアフォに見えるけどな。
691 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 10:28:19 ] 「さくっと直せばいいじゃん」って言ってる奴はだいたい直したことがない奴だし。
692 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 10:32:04 ] そもそも、直す必要なんてない、動くから
693 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 11:05:10 ] >>692 >>690
694 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 11:08:34 ] 何が問題か、具体的に
695 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 12:54:51 ] 問題を理解できていないことが問題なんだろ。
696 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 13:08:14 ] 互換性がいるのは移植する可能性がある場合だろうかと。 あるいは環境が一部不明な場合か。 ただ、知識としてはあれば有効だろうが
697 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 14:23:00 ] 開発当初は特定のシステム限定であったとしても、実社会では いつのまにかそんな制約はなくなってしまうものなのだよ。 ニートにはわからないだろうが。
698 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 14:53:17 ] 自分の体験したことが、現実の全てだと思っている>>697 がいるスレはここですか?
699 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 15:16:00 ] >>698 「全ての」と「存在する」の違いを未だ習ってないのかい? ぼーや
700 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 15:20:19 ] シェルで移植性の高いスクリプトを書くのはめんどうくさいので Perlを使うようになりますた
701 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 16:25:18 ] それはそれで別の移植性の低さが問題になりそうな…
702 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 16:36:58 ] Solarisさえ無くなればシェルの互換性の問題はほとんど解決するよね。
703 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 16:55:08 ] UNIXのソフト開発標準を策定しようという取り組みはたくさんあった。 だがそうした標準は、POSIX(Portable Operating System Interface)のように 一般的過ぎて役に立たないか、あるいはUNIX戦争として知られる Open Software Foundation対UNIX Internationalの企業連合間抗争に 巻き込まれるかだった。
704 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 17:09:49 ] mkmfのようにメタスクリプトを環境依存シェルスクリプトにコンパイルする プログラムがあるといいと思います!
705 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 17:11:11 ] mkmfって、、また古い遺物を持ち出してきたなぁ、、
706 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 20:29:52 ] 本当にそんな互換性が必要ならlintの一つや二つとっくにありそうな気がするが、 寡聞にして知らないなあ。
707 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 20:33:44 ] >>706 つ dash #まあ呼び出したコマンドの互換性まではチェックできないわけだが・・・
708 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/23(土) 20:36:48 ] 役に立たない、ただそれだけ
709 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/24(日) 05:17:26 ] すべてのシェルが/bin/shを名乗るのを止めて /bin/shを永久欠番化すれば解決
710 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/25(月) 02:26:09 ] なんかすごい扱われようだな。 互換性を述べている人は割とバランスの取れたUNIX流の解釈だと思うぞ
711 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/25(月) 03:02:50 ] どうせUnixなんて適当じゃねえか varとかetcとか システム変えることになったらどうせテンヤワンヤだ
712 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/25(月) 05:49:56 ] ということにしたいんですね:)
713 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/25(月) 23:17:51 ] >>710 素直に自分よりの解釈だと言えば?
714 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/25(月) 23:43:08 ] >>685 のは結構凄いと思うが、 >>517 のedのヤツはもっと凄いな。 オレもed好きになろう。
715 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/26(火) 15:37:00 ] edで日本語がうまく扱うほうほうがあれば言うことないのだが・・・・
716 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/26(火) 15:40:11 ] sedにin-placeオプションがなくてperlをよく知らなかったころは edでやってたな
717 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/26(火) 15:40:12 ] >715 edより先におまえが日本語をうまく扱えるようになる必要がありそうだ
718 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/26(火) 15:44:41 ] 誰がうまいこといえと