トップページunix
1001コメント351KB

シェルスクリプト総合 その16

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2010/02/20(土) 14:10:05
シェルスクリプトの総合スレです。 
スクリプトのお勉強・自慢・腕試しなどにどうぞ。 
まずは注意点、リンク、地鎮祭など(>>1-6くらい)をご覧ください。 

□お約束 
・特記なき場合はBourne Shell(/bin/sh)がデフォルトです。 
 bash/zsh/ksh/ashなどに依存する場合は明示しましょう。 
 Linuxユーザは/bin/shの正体がbashなので特に注意。 
 FreeBSDユーザは/bin/shの正体がashなので注意。 
 v7 shに一番近くて、現役のshは、OpenSolaris由来のheirloom sh。 
  http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/cmd/sh/ ;
  http://heirloom.sourceforge.net/sh.html ;
・csh/tcshのシェルスクリプトは推奨されません。 
 (理由は「csh-whynot」でググれ) 
・UNIXにはシェルスクリプトに便利な小さなコマンドがいろいろあります。 
 manや参考リンクを見ましょう。 
 aproposないしはman -kでそれらしい単語による簡単な検索もできます。 
・シェルスクリプトのことをシェルってゆーな 
・シェルで使えるワイルドカード等は正規表現ではありません。 
 正規表現の話題はスレ違い(正規表現スレへ) 

□初心者へのアドバイス: 
・適した道具を判断するのも頭の重要な使い方。シェルスクリプトよりも 
 RubyやPerlの方が適した仕事には素直にそちらを使いましょう。 
・知らないコマンドが出てきたらmanを引きましょう。 
・思い通りに動かないときは、まずは sh -x でトレースしましょう。 

前スレ 
シェルスクリプト総合 その15
http://pc12.2ch.net/test/read.cgi/unix/1246408968/l50
0349名無しさん@お腹いっぱい。2010/05/15(土) 07:16:25
>>345
何言ってるの?

>>345 はすでに論破されている。
というか、>>333 が言ってるように、
何度もコピペしてる >>345 等は最初から論点がズレていて
反論になってない。だから何回コピペしてもほとんど相手にされてない。

もう一度まとめると、
>>278 = >>285 が知らなかった(そして恥をかいた)こと。

・/dev/tcpはLinux独自のデバイスファイルだと思っていた
・bashが/dev/tcpを特別扱いすることを知らなかった
・FreeBSD等でも、bashで/dev/tcpを使えることを知らなかった
・bashのコンパイル時に/dev/tcpを無効にすることができることを知らなかった
・OSやディス鳥がわからなくても、bashバイナリをobjdump -Tして調べる方法を知らなか
った
・野良ビルドでも、Web上のコマンドラインをコピペして知らずにdisableオプションを付
けていて本人が忘れてることが良くあることを知らなかった
・/dev/tcpはスクリプトで使うものだと知らなかった(>>338 が指摘)
0350名無しさん@お腹いっぱい。2010/05/15(土) 07:25:17
>>345
は論点のすり替えだな。

>>288
>言い訳見苦しいね。Linuxを目のカタキにしてると /dev/tcpが Linux独自のデバイスに
>見えたんだろうね。*BSDでもSolarisでも bashで /dev/tcpは使えるんだよwww

↑が言ってるのは、「/dev/tcpはLinuxだけで使える」←に対する反論として、
「*BSDでもSolarisでも bashで /dev/tcpは使える」と言ってるに過ぎない。

「使えてれば質問しないかどうか」の結果がどうであれ、
「/dev/tcpはLinuxだけで使える」←が間違いであると言う事実の主張に対する
反論にはならない。

「/dev/tcpはLinuxだけで使える」と思っていた >>278 = >>285
苦肉の策で思いついた言い訳が >>345 他多量の同文コピペというわけだなwww
■ このスレッドは過去ログ倉庫に格納されています