■掲示板に戻る■ 全部 1- 最新50

☆シェルスクリプトを勉強するにあたって☆

1 :あらん :2001/05/12(土) 18:32
シェルスクリプトを勉強しようと、思い様々な検索をかけてみて、
Windowsでいう、バッチファイルの高級バージョンという、事と、
主に、3種類のバージョンがあることは、わかりました。
しかし、肝心の勉強する本が見つかりません。みなさんは、
どのようにして、学ばれたのでしょうか。
オススメの、HP、本等ありましたら、お願いします。

2 :名無しさん@お腹いっぱい。 :2001/05/12(土) 18:51
google で検索する。

3 :1 :2001/05/12(土) 19:27
googleで検索したんですが、肝心の参考書はみつかりませんでした。
2さんが、ご存知でしたら是非おしえてください。m(._.)m 

4 :名無しさん@お腹いっぱい。 :2001/05/12(土) 19:42
>>3
http://www.amazon.co.jp/exec/obidos/ASIN/4900900788/qid=989664151/sr=1-1/249-4777330-0673155

5 :名無しさん@お腹いっぱい。 :2001/05/12(土) 19:50
>>1
なんこう、他力本願なんだ?
manみれ。
例は、自分のホストのinitでも覗け。

6 :障害明け名無しさん :2001/05/12(土) 20:12
せめて何shを使うのかくらい言えばいいのに。
そもそもOSは?

7 :名無しさん@お腹いっぱい。 :2001/05/12(土) 20:14
『プロフェショナルシェルプログラミング』
(砂原秀樹他著 アスキー出版局 1996年発行)
が、入門〜中級向けくらいにいいんじゃないのかな。
魂的には、『UNIX プログラミング環境』が好きだけど。

8 :名無しさん@お腹いっぱい。 :2001/05/12(土) 20:30
まず「Bourne Shell 自習テキスト」だろ。
漏れも昔お世話になった。

http://flex.ee.uec.ac.jp/texi/sh/sh.html

>>1
csh script だけはやめとけ(w


9 :名無し産 :2001/05/12(土) 20:50
入門UNIXシェルプログラミング
ソフトバンク
ISBN4-7973-0828-1

とりあえず、立ち読みな

10 :名無しさん@お腹いっぱい。 :2001/05/12(土) 22:02
cshの $file:r とか便利で使いたくなるんですけど。
まあ、basenameとか expr使えばいいんだけど。
コマンド起動するぶん遅くなるし。
[ よりも caseを使え。


11 :名無しさん@お腹いっぱい。 :2001/05/12(土) 22:18
man sh


12 :名無しさん@お腹いっぱい。 :2001/05/12(土) 23:34
man ページだけでは shell プログラミングはできない。
せいぜい DOS のバッチと同じレベルで終ってしまう。
とりあえず、ここにあがっているような書籍を読んで、
/etc/rc とか shutdown スクリプトなどを手始めに手当り次第解析しろ。

あと、リダイレクトや echo * の意味を完全に理解しておけ。
# 特に DOS 出身者じゃなくても周りに DOS 出身者がいたら、
# 混乱させられるから注意しろ。
# あ、ここでの DOS 出身者とは「DOS と同じジャン」っていうヤツを示す。


13 :名無しさん@お腹いっぱい。 :2001/05/12(土) 23:59
オレはAIXなのでオライリーの「入門Kornシェル」です。
かなりいいです。

14 :名無しさん@お腹いっぱい。 :2001/05/13(日) 00:11


          || ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄||
          ||  BSD馬鹿は     Λ_Λ  いいですね。
          ||   放置!  \ (゚ー゚*)
          ||________⊂⊂ |
  ∧ ∧    ∧ ∧    ∧ ∧    | ̄ ̄ ̄ ̄|
  (  ∧ ∧ (   ∧ ∧ (  ∧ ∧ |      |
〜(_(  ∧ ∧ __(  ∧ ∧__(   ∧ ∧ ̄ ̄ ̄
  〜(_(  ∧ ∧_(  ∧ ∧_(   ∧ ∧  は〜い、先生。
    〜(_(   ,,)〜(_(   ,,)〜(_(   ,,)
      〜(___ノ  〜(___ノ   〜(___ノ




15 :名無しさん@お腹いっぱい。 :2001/05/13(日) 00:34
*BSD を使いこなせない厨房発見!

16 :名無しさん@お腹いっぱい。 :2001/05/17(木) 16:30
solarisでjavaの複数のプロセスを一気に消したい。

% ps
PIT TT S TIME COMMAND
ってでてきます。
で、
% ps | awk ' $5 ~ /java/ { print $1; }'
とやると、COMMANDにjavaを含むプロセスのPIDを表示しますよね?
で、そいつらを消したいのですが。

17 :名無しさん@お腹いっぱい。 :2001/05/17(木) 16:38
# kill -KILL 1
で全部消えますよ

18 :名無しさん@お腹いっぱい。 :2001/05/17(木) 17:25
Solaris はしらんけど、
% kill `ps | awk ' $5 ~ /java/ { print $1; }'`
でどうよ。


19 :名無しさん@お腹いっぱい。 :2001/05/17(木) 17:31
Solaris に pkill って便利なのあるよ。
あ。pgrep ってのも。


20 :16 :2001/05/17(木) 22:08
>>18
ありがとうございます。
その方法で無事消えました。

>>19
http://www.cs.vu.nl/das/prun/pkill.1.html
% man pkill
でマニュアルが読めなかったので検索しました。
いまいちのみこめませんが、
% pkill java
だけでやりたいことが出来ました。
便利です。

21 :名無しさん@お腹いっぱい。 :2001/05/17(木) 22:36
オレも>>7をお薦めするよ。インタラクティブな用法と、
プログラミング、それぞれを分けた上でキッチリと攻めて
いるので判りやすいし、お得感もある。

シェルプログラミングって、空白や改行が不自由だったり
文法にきつい制約があったりするから、perlなんかを
自由に扱える人でも頭を抱えてしまうことが多し。
けっこう奥が深い世界なんだよね。

22 :名無し産 :2001/05/20(日) 10:49
ねうねう、
ユーザー大量追加のスクリプトって組めなくは無いですよね
どなたか見本を教えてくださらない?

つーか、たとえばhoge.csvファイルで
中身はhoge,xkfo07034のようにID,Passに記述されているとしたら・・・

すんません厨房で・・・

23 :名無し侍 :2001/05/20(日) 12:38
あげとけ

24 :名無しさん@お腹いっぱい。 :2001/05/20(日) 13:33
>>12
いろんなツール類を組み合わせれば、DOSのバッチでもかなりのことが出来ますね。
バッチっていっても、単なる起動バッチの類から、Cマガに昔載ってたプラグラム(だっけ?)みたいな割と複雑なものまで色々ありますね。
ECHOを使って、バッチからバッチを自動生成したりとか。
環境変数やリダイレクトもよく使うし、findやforeach、awk,sortf,sedなども良く使います。

多分「DOSと一緒」という発言は↑のような使い方を前提としていると思うんですが、「決定的な違い」というのが良く分からないんです。
シェルスクリプトの方がもっと高機能だと思うんだけど、まだ手習いなもので。
素人目だと、プロセス管理とか、分岐処理とかがやり易いのかなあっていうぐらいしか分からないです。
あ、例えばパイプ処理が並列で行われているとか、それに伴う途中経過の違いとかいうのは分かるんですけど、実用上、
具体的にこんな違いがあるっていうのが、どうもピンと来ないんです。

バッチとシェルスクリプトの決定的な(ツール程度では埋めようの無い)、実用上の相違点を、具体的に幾つか挙げていただけると嬉しいです。

もちろん煽りじゃないです。



続きを読む

掲示板に戻る 全部 次100 最新50
名前: E-mail (省略可) :

read.cgi ver5.26+ (01/10/21-)