TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼
オライリーの表紙になったら嫌な生き物
【へぇ】トリビアの泉@UNIX板【へぇ】
【Unix】糞を愛するUnixer【Linux】
FreeBSDonMAC
Internet Mail System 総合スレ 3
もまえらのunix以外の趣味を教えてみやがれ
【火の鳥】Firebird【不死鳥】
モノシリックカーネルのどこが悪いんだよ!?
ProFTPDについて語るスレ 2
UNIX使いなのにプログラミングできないヤシ

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


1 :2014/07/01 〜 最終レス :2014/11/11
シェルスクリプトの総合スレです。
□お約束
・特記なき場合はBourne Shell(/bin/sh)がデフォルトです。
 bash/zsh/ksh/ashなどに依存する場合は明示しましょう。
 Linuxユーザは/bin/shの正体がbashまたはdashなので特に注意。
 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でそれらしい単語による簡単な検索もできます。
・シェルで使えるワイルドカード等は正規表現ではありません。
 正規表現の話題はスレ違い(正規表現スレへ)
・シェルスクリプトのことをシェルってゆーな
□初心者へのアドバイス:
・適した道具を判断するのも頭の重要な使い方。シェルスクリプトよりも
 awkまたはperlの方が適した処理にはそちらを使いましょう。
・知らないコマンドが出てきたらmanを引きましょう。
・思い通りに動かないときは、まずは sh -x でトレースしましょう。
□回答者への注意事項:
・シェルスクリプトでの処理方法を質問しているのに、よくわからずに
 「そういうのはperl使いましょう」と回答するのはやめましょう。
 安易にperlに逃げずにシェルスクリプトで処理するのが頭のいいやり方。
前スレ
シェルスクリプト総合 その22
http://peace.2ch.sc/test/read.cgi/unix/1383260330/

2 :
すみませんがシェルに詳しい方のみ回答をお願いします

3 :
・シェルスクリプトのことをシェルってゆーな

4 :
シャロスクリプトまだー?

5 :
その22 をそのままコピペしましたが
その16にあったもの
□関連スレ:
□初心者向けリンク:
□入門者向け書籍:
□参考リンク:
□最近のシェルスクリプト本:
□関連書籍と関連リンク:
□人間初心者へのお願い:
□シェルスクリプトでよく使うコマンド:
です。
今、追加案あればどうぞ

6 :
>>4
そんなのないよ

7 :
>>1
>  安易にperlに逃げずにシェルスクリプトで処理するのが頭のいいやり方。
便利なものはどんどん使う方が頭いいと思うがなぁ。

8 :
このスレは純正シェル道の求道者達が集う道場スレです。
うかつに部外者が踏み込むとケガをする場合があるのでご注意ください。

9 :
知らんがな

10 :
忘れてた
>>1たて乙

11 :
昨今の*nixなら某かの方法でbashは入手できるよね
純性UNIXはkshを愛してるみたいだけど時代の要請を理解してる

12 :
別にbash限定のシェルスクリプト書いていけないわけではない
恥ずかしながらbashでしか動きません、と注釈付けてあれば
文句いう人は少ない

13 :
なら1行目で最初から解決してるんだね。よかったよかった

14 :
bashをログインシェルにしてる奴の作ったプログラムは全部GPLが感染するよ。

15 :
さあー、盛り上がってきたよ!
じゃんじゃん自分の意見を書いていこう!
ポータブル派保守系、時代はbash派革新系
シェルスクリプトに無理にこだわらない現実派
テンプレの募集もしていますよ
その17、その18で消えたようだから、その16、その17を元に話しましょう

16 :
ややこしい操作するなら安易にperlでやる派

17 :
>>11
組み込みとかメモリが足りなかったら入れられないんじゃないかな。
PCでも何千とか起動すると重そう。

18 :
そういう特殊な環境の話はしてないっしょ。

19 :
>>7
誰もメンテできなくなったVBやCOBOLやExcelの
資産()を見てもそう思えるんなら、才能ないから
コンピュータから手を引いたほうがいい。

20 :
bash を使うなとは言わんけど、bash でしか動かんものは
#! 行でそうと宣言しておいてほしい。
つーか、#!/bin/sh と書かれていたら
bash の独自拡張はぜんぶエラーにしてほしいんだが。
man によると sh という名前で起動されると POSIX 互換モードになるらしいけど、
あいかわらず bash 拡張がふつーに使えて違いがさっぱりわからん。

21 :
trapとセットでよく使うmktempとか結構システムによって挙動ちがうけど、純粋シェル道的にはどうやって実装するの?

22 :
>>20
ここに書けばエラーレスが出るよ。

23 :
>>20
bash で #!/bin/sh と書いたら、プロセス置換 <(command) とかが使えなくなるという違いはある。

24 :
>>20
Bourne Shellを自分で入れるのが一番良いかもね

25 :
>>20
例えばLinuxのDebian系ディストリだと
そのために拡張控えめな dash (Debian版ash) があったりするね

26 :
同じbashでも、#!/bin/shと書いて起動するとその動作モードが変わるという話をしてるんだけどね。
zshでも動作は変わる。が、ash(dash)は#!/bin/shと書いても#!/bin/ashと書いても何も変わらない。

27 :
>>20>>26
たぶんPOSIX準拠でエラーのないスクリプトが正常動作する程度の機能なんだろう。
最低限それやっとかないとPOSIX準拠のシェルとして採用してもらえなくなるから。
厳密にPOSIX準拠で拡張ゼロのシェルを内部に別途実装するとか無駄だから、
そういう要望はBourne Shell入れてそっちでやってくれってスタンスなんじゃね?

28 :
今後新しいシェルが出てきて乗り換えた時に、書き溜めたスクリプトが動くと嬉しいので、互換性指摘は嬉しい。
ただ、その時々によって必要性が違うので無視するかも。
つまり、互換性指摘はWarningということだ。

29 :
シェルスクリプトってインタプリタ言語だしWarning出さずにError出すイメージ

30 :
何その勝手なイメージは

31 :
お前の勝手なイメージを押し付けるな!

32 :
× イメージ
○ イミッジ
これを間違えると日本人と思われて馬鹿にされるので気を付けるようにw

33 :
× アイディア
○ アイデア

34 :
日本人ってだけでバカにするのはアレな国の人だけだと思う

35 :
checkbashism使ってみるのはどうか。
https://alioth.debian.org/scm/browser.php?group_id=30755
PerlスクリプトなのでDebian以外でも普通に動くはず。

36 :
>>35
使ってみたことあるけどBourne shとの互換性チェックには全然ならないよ。

37 :
ポータブルなスクリプトがデフォなのは賛成だが、
デフォが Bourne shell ( 商用 UNIX 等で生き残っている
Traditional Bourne shell と解釈しています ) とするのは反対
前から思っていましたが、多くの環境でわざわざインストールしないと使えない
Bourne shell にこだわる必要性は、少ないと思う
皆さんが、ポータブル性は POSIX 相当でも OK なら、こんな風にしたい
□お約束
・特記なき場合は #!/bin/sh がデフォルトです。この場合、ポータビリティーに注意し
 Traditional Bourne Shell もしくは、POSIX 相当のスクリプトでお願いします。
 bash/zsh/ksh/ash/dash などに依存する場合は明示しましょう。

38 :
その辺はスレ立てる人が勝手に決めてるだけだから
次スレ自分で立てればいいよ。

39 :
今回立てた時に、やはり了承を得てからと思って、コピペにしました
本当は、>>7 の言うことも納得で、
> □回答者への注意事項:
も消したかった

40 :
>>1 です
暇を見て、話題の途切れたときにでもテンプレ案出してみます

41 :
連投失礼します。テンプレ案考えてみました。かなり手を入れました
どんどん指摘して下さい
ただし、こんな風にしろとかだけでは無く、具体的に修正したものを付けて下さい
指摘された事に、別の方の反論が無ければ、そのまま機械的に取り込みます
考慮が足りなかった場合は、後で条件を追加・変更する事も有ります
変更点
1. ">>1 A.3 を見てね" と簡単に指摘出来る様に、番号をふりました
2. 日本語とアルファベットとの間に半角スペースを入れました。/ ( ) 前後にも
3. お約束の項目でお約束で無い、前提知識等をお約束の補足に移動しました
4. 初心者でも参加しやすい様に、工夫しました
 ( 特にポータブル志向がハードルを上げ、参加をさまたげ無い様に )
5. Bourne Shell ポータビリティー POSIX について、説明を加えました
6. MacOSX について触れていないのが気になったので、書き加えましたが、
 /bin/sh と /bin/bash でバイナリーサイズ、inode が違うらしいです
 詳しい方、ぜひ修正をお願いします
  https://discussions.apple.com/message/18600748
7. 過去ログから、テンプレートを復活させてみました。所々変えてます。
8. Wiki でなくこのスレで、気軽にテンプレ修正議論が出来る様に、してみました。

42 :
シェルスクリプトの総合スレです。
初心者、学生、アマチュア、プロ、シェルの種類や OS を問いません。
スクリプトのお勉強・自慢・腕試しなどにどうぞ。
まずはテンプレートをご覧下さい。
□A. お約束
1. 特記なき場合は #!/bin/sh がデフォルトです。この場合ポータビリティーに注意し、
 Traditional Bourne Shell もしくは、POSIX 相当のスクリプトでお願いします。
 bash / zsh / ksh / ash / dash や OS 等に依存する場合は、明示しましょう。
 良く分からない方は、使用している OS を書いておけば OK です。是非ご参加下さい。
2. 質問する前に、まず自分で調べましょう。ただし、
 「聞くは一時の恥、聞かぬは一生の恥」です。積極的に参加しましょう。
3. 相手を侮辱する発言、失礼な発言は差し控え、知的な議論を楽しみましょう。
4. 他者には様々な環境や事情、目的が有る事に留意し、無下に扱う様な発言は
 控えましょう。

43 :
□B. お約束の補足
1. Mac OS X では、/bin/sh の実体は bash です。また、一般的に BSD 系 や
 GNU/Linux の方は、/bin/sh がシンボリックリンクですので、注意して下さい。
 ls -l /bin/sh や readlink -e /bin/sh で確かめて下さい。
2. ポータビリティーについては、下記 F.1 を参照して下さい。
3. POSIX については、man 7 standards や下記 F.2 ( の特に Shell & Utilities )
 を参照して下さい。
4. Traditional Bourne Shell とは、UNIX Version 7 から SVR4.2 の /bin/sh を元に
 小さなの改変を加え主に商用 UNIX で残されているものです。( 下記 F.3 参照 )
5. Traditional Bourne Shell で入手しやすい sh は、後期 SVR4.0 から派生し、
 SunOS 5 / OpenSolaris を経た、Heirloom Bourne Shell です。
 SVR4 / SVID3 相当です。同様の Unix utilities も扱っています。
 ( 下記 F.3 参照 )

44 :
□C. 初心者へのアドバイス
1. シェルスクリプトのことをシェルってゆーな
2. 知らないコマンドが出てきたら man コマンドで調べましょう。
3. UNIX には、シェルスクリプトに便利な小さなコマンドが色々あります。
 apropos ないしは man -k でそれらしい単語による簡単な検索もできます。
4. シェルの構文や内部コマンドは man sh で。英語は LANG=C man shで。
5. 思い通りに動かないときは、まずは #!/bin/sh -x でトレースしましょう。
6. 適した道具を判断するのも頭の重要な使い方。シェルスクリプトよりも
 awk / perl / javascript / ruby / python 等、他の (スクリプト) 言語の方が
 適した処理にはそちらを使いましょう。
7. シェルで使えるワイルドカード等は正規表現ではありません。
 正規表現の話題は正規表現スレへ
8. csh / tcsh のシェルスクリプトは推奨されません。理由は下記を参照
 http://www.speech-lab.org/~hiroki/csh-whynot.euc

45 :
□D. シェルスクリプトでよく使うコマンド
1. 制御・条件判定系: [, test, expr, true, false, yes, getopts
2. テキスト処理系: cat, awk, sed, tr, sort, uniq, grep, wc, head, tail, cut,
 paste, comm, join
3. ファイル検索系: find ( スペースなどを含むファイル名を正しく処理するため、
 find は -exec command {} + を推奨。
 他に -print0、xargs は -0 オプションという方法もあるが Solaris 非対応 )
4. ディレクトリ系: basename, dirname
5. 出力系: echo, printf
6. 対話コマンド制御系: expect
7. http / ftp の処理自動化: wget, curl

46 :
□E. 学習用テキスト
1. Bourne&#160;Shell自習テキスト ( 1993年 )
 http://lagendra.s.kanazawa-u.ac.jp/ogurisu/manuals/sh-text/sh/index.html
2. シェルを使おう - 導入からプログラミングまで - ( 2002年 )
 http://www.netfort.gr.jp/~tomokuni/lms/shell/
3. 入門用図書
 a. 特に話題に上らなければ削除します
4. お勧め図書
 a. 特に話題に上らなければ削除します

47 :
□E. 学習用テキスト
1. Bourne Shell自習テキスト ( 1993年 )
 http://lagendra.s.kanazawa-u.ac.jp/ogurisu/manuals/sh-text/sh/index.html
2. シェルを使おう - 導入からプログラミングまで - ( 2002年 )
 http://www.netfort.gr.jp/~tomokuni/lms/shell/
3. 入門用図書
 a. 特に話題に上らなければ削除します
4. お勧め図書
 a. 特に話題に上らなければ削除します

48 :
□F. 参考リンク
1. ポータビリティー関連
 a. autoconf マニュアル 移植性のあるシェルプログラム
  http://www.gnu.org/software/autoconf/manual/autoconf.html#Portable-Shell
  http://www.geocities.jp/fut_nis/html/autoconf-ja/Portable-Shell.html
 b. Portability talk [Bash Hackers Wiki] 英文
  Obsolete and deprecated syntax も見る価値有り
  http://wiki.bash-hackers.org/scripting/nonportable
 c. How to make bash scripts work in dash 英文
  http://mywiki.wooledge.org/Bashism
 d. DashAsBinSh 英文
  https://wiki.ubuntu.com/DashAsBinSh
 e. Portable Shell Programming 英文
  http://www.in-ulm.de/~mascheck/various/portability/
2. POSIX
 The Open Group Base Specifications Issue 7 IEEE Std 1003.1, 2013 Edition 英文
 http://pubs.opengroup.org/onlinepubs/9699919799/

49 :
自分の場合は書籍はあまり見てなかった
入門時に一番参照したのは、UNIX FAQ なんだよね (NetNewsに流れてたの)
http://www.nurs.or.jp/~asada/FAQ/UNIX/UNIX.FAQ.html
例えばサブシェルとかは、知ってないとハマってしまう
>>47のBourne Shell自習テキストは、HTML化がいまいちなので
LaTeXの方を見て欲しい。誰かPDFで公開してないかな
と思ったらあった
http://ayapin.film.s.dendai.ac.jp/~matuda/Lecture/PDF/sh-two.pdf

50 :
参考リンクはともかく、学習用文書はいらなくないか?
あまりテンプレ充実しすぎてても考え物な気がする
今までが1レスだったから特に
しかしポータビリティって単語好きだね

51 :
可搬性

52 :
POSIXのPはポータブルのP。

53 :
連投規制中です。しばらく待ちましたが、いっこうに書き込めません
代行さんに書き込んでもらっています
続きは明日以降で。参考リンクが、まだ続いて、他に
前スレ、関連スレ、テンプレートの変更案
が有ります。これ以上長いと、問題有そうですが
とりあえず、あげてみます

54 :
テンプレ貼るのに連投規制食らうようなものはいかんだろう。
つーか、今テンプレ決めて次スレ立つの何年後だよwww

55 :
前スレは1年かからなかった。

56 :
3. Traditional Bourne Shell 関連
 a. The Traditional Bourne Shell Family History and Development 英文
  http://www.in-ulm.de/~mascheck/bourne/
 b. BourneShell / Where does the Bourne shell live? 英文
  http://mywiki.wooledge.org/BourneShell
 c. The Heirloom Bourne Shell 英文
  http://heirloom.sourceforge.net/
4. マニュアル
 a. The Base Specifications Issue 7, 2013 Edition 英文
  http://pubs.opengroup.org/onlinepubs/9699919799/nfindex.html
 b. FreeBSD 日本語マニュアル検索
  http://www.jp.freebsd.org/man-jp/search.html
 c. JM Project (Japanese)
  http://linuxjm.sourceforge.jp/
5. FAQ 等
 a. UNIXの部屋 ( 2011年 )
  http://x68000.q-e-d.net/~68user/unix/
 b. Linux JF (Japanese FAQ) Project
 http://linuxjf.sourceforge.jp/

57 :
 c. Advanced Bash-Scripting Guide 英文
  http://www.tldp.org/LDP/abs/html/
 d. Unix Programming FAQ 日本語訳 ( 2000年 )
  http://www.race.u-tokyo.ac.jp/~moro/unix-programmer/
6. ツール
□G. 前スレ
1. ☆シェルスクリプトを勉強するにあたって☆
 http://hibari.2ch.sc/test/read.cgi/unix/989659936/
2. 便利なシェルスクリプト見せろ
 http://pc.2ch.sc/test/read.cgi/unix/996949546/
3. シェルスクリプト総合 その1
 http://pc5.2ch.sc/test/read.cgi/unix/1101820646/
中略。検索して下さい
4. シェルスクリプト総合 その23
 http://peace.2ch.sc/test/read.cgi/unix/1404204950/

58 :
□H. 関連スレ
1. sed
 http://peace.2ch.sc/test/read.cgi/unix/1085730992/
2. 正規表現
 http://peace.2ch.sc/test/read.cgi/unix/1039165754/
3. Regular Expression(正規表現) Part12
 http://peace.2ch.sc/test/read.cgi/tech/1387257592/
4. Perlについての質問箱 63箱目
 http://peace.2ch.sc/test/read.cgi/tech/1392906213/
5. ECMAScript デス 4
 http://peace.2ch.sc/test/read.cgi/tech/1325448978/
6. Rubyについて Part49
 http://peace.2ch.sc/test/read.cgi/tech/1382307475/
7. Pythonのお勉強 Part49
 http://peace.2ch.sc/test/read.cgi/tech/1387528488/
8. 【node.js】サーバサイドjavascript 2【Rhino】
 http://peace.2ch.sc/test/read.cgi/tech/1358937029/

59 :
□I. 現在評価待ち: X.n は予定した追加先。主にスレ立て人の判断保留用。
1. F.6 ツール
 a. web tool です。Vim syntastic や Emacs の Flycheck でも使えます
  ShellCheck
  http://www.shellcheck.net/about.html

60 :
□J. テンプレートの変更案や、おすすめの本、リンク等が有りましたら続けてどうぞ!
1. 検索しやすい様に、先頭に "コメント複数行\n指示\n□X" を付けて指定して下さい。
 追加や、削除、挿入、移動、分割等と適切に書いて下さい。
 900 レスまでに別の方の反論が無ければ、次にスレッドを立てる人が適当に判断して
 取り込むはずです。
2. レス例
スクリプトスレを列挙するのは不要に感じる
削除
□H. 関連スレ
 H.5から8 ECMAScript, Rubyについて, Pythonのお勉強, サーバサイドjavascript
3. レス例
これは、聖なる本
追加
□E. 学習用テキスト
4.お勧め図書
 a 伝承シェルプログラミング ( 199X年 )
  http://www.example.net/404.html
| テンプレートの変更案や、お勧めのリンク、本等が有りましたら、
V あ、張り切って〜、どうぞ〜! 案じゃ無くてつぶやきでも、どうぞ〜!

61 :
自分でも追加してみます。syntastic とか、shlint とかって、使っている人少ない
みたいですがどうですか?
追加
□F
6. ツール
 b. vim 用 syntastic
  https://github.com/scrooloose/syntastic
 c. checkbashisms も使用してチェック duggan/shlint GitHub
  https://github.com/duggan/shlint
>>49
挿入
□E. 学習用テキスト
3. UNIX FAQ LIST
 http://www.nurs.or.jp/~asada/FAQ/UNIX/UNIX.FAQ.html

62 :
>>49
修正
□E. 学習用テキスト
1. Bourne Shell自習テキスト ( 1993年 ) pdf お薦め
 http://lagendra.s.kanazawa-u.ac.jp/ogurisu/manuals/sh-text/sh/index.html
 http://ayapin.film.s.dendai.ac.jp/~matuda/Lecture/PDF/sh-two.pdf
# >>50 削除どうしましょう?余計そうなものが他にも有るので、ご意見下さい。
# 出来れば、初心者も歓迎する雰囲気を消したくないのと、>>49 とぶつかるので。
# >>50 案 長すぎるので、学習用テキストは不要ではないか
# 削除
# □E. 学習用テキスト
# あと、ポータビリティーについて、私は違和感が無かったのですが、日本語じゃないかも。
# いくつか書籍も調べました。書き込めたら、別に書きます。
# 回りくどい書き方しましたが、ツール類のご意見下さい。
# 以上です。連投失礼しました。
# >>49 UNIX FAQ LIST 見覚えある。なつかしい。fj とかも見てましたよ。買い物したり

63 :
portability の訳語についてです。移植性、汎用性、可搬性と訳されているようです
ポータビリティーはそのままじゃあ通じないのかなあ?しっくりくる言葉のご意見下さい
O'Reilly Japan - 詳解 シェルスクリプトでは、移植性 としています
原著 Classic Shell Scripting Shell Portability Issues and Extensions
入門UNIXシェルプログラミング―シェルの基礎から学ぶUNIXの世界
汎用性としています。原著は未確認
可搬性は、O'Reilly Japan - 入門 bash や、bashクックブックで使われています
スクリプトではないですが、Small is beautiful. ではじまる、UNIX 哲学とかでは
本や、ネットを見ると Choose portability over efficiency. で移植性や、移植しやすさ
あと、F.1.a autoconf マニュアル は、移植性のあるシェルプログラム です
次に、連投規制についてですが、もしかして誤解されていたら残念なので一応
前置き、1 候補の A. B を分割して書き込んだ事、E を 2 回書いた事で、
3 レス分は余計に書いていますので、一応ほぼ全てを一度に書き込めはします
書けない 2 レス分+αは、スレ消化前に少し早めに立てて、分けて書き込むとかで
無理ではないかと思います
ただ、今までが 1 のみだったので、>>50 ももっともです。どんどん書き変えて下さい

64 :
 わりと
   どうでもいいよね〜                   ね〜♪
                         _ ‐..::  ̄ ̄ ::::... 、
              . ィ            r'::/ ::ィ:::::::::::j:::::::ヽ::::\
,._.._ .......、._    _ /:/l!            | ::|::/ |::::::::∧:::レ::l:::| :::::rヘ
ヽ :~""''.>゙' "~ ,、、''‐'、|          l ::仏_ノヘ:/ ー- ハ:::!::::::|::::i
 ゙、'、::::::ノ:::::::_,.-=.  _〜:、          /::::リy=ミ ' ィ=ミ /:::::!::::/:::::!
  ``、/:::::::::__....,._ `゙'Y' _.ェ-、..._      |::::{xx     xx/::::::「)'|:::::::|
  ,.--l‐''"~..-_'.x-='"゙ー 、`'-、      lハ:仆 ..._ヽフ /:::: /´ |:::::::|
 "   .!-'",/  `'-‐'') /\ `      Y::::ソ勺 7イV_  !:::::::!
  .-''~ >'゙::    ‐'"゙./  ヽ.    __  |::/ 爻___ん'´ッ'⌒ヽ! :::::!
    //:::::       ',        (__,、\/ /‐―一弋{、  /  ̄_)
   ' /:::::       .:';          \ ' {      :::\   /~::!

65 :
どうでもよくない

66 :
めっちゃ頑張ってるのは評価するが需要にあってるかどうか微妙
レスを見ても長すぎるテンプレを褒める書き込みはない
その16でどんな議論があったのかは知らんが、今の提案は全部長文すぎて読む気が起きん
Small is beautifulなんだろう?

67 :
 ―┼‐         ノ     /   |  --ヒ_/     /   \ヽヽ    ー―''7
   `」   ┼,   二Z二   レ   /  /´レ' \ ―7 ̄}  |  ー-、   /
 (__  (|フ)   (__ノ  _ノ  ∨`  ノ  /  /     _ノ    \_
    ─┼-        /   |   ‐┼-   |     ー|―
    ─┼─ |   \ レ  /   ̄Tー  /      ノ -─
   (二フヽ  \/    _ノ   (二フ\  ヽ_ノ   / 、__
     i';i
    /__Y
     ||真||                   /⌒彡
  _ ||露||         /⌒\     /冫、 ) ・・・・・・。
  \ ||  || ̄ ̄ ̄ ̄ ̄ ̄ ̄\ `./⌒ i `  /ゝ    _,,..,,,,_
  ||\`~~´  (十万石)     \( >     ('\\  ./ ,' 3 `ヽーっ ・・・・・・。
  ||\|| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|| ̄\`つ    ⌒ _) l   ⊃ ⌒_つ
     .|| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄||                `'ー---‐
( 'A) ・・・。 〃∩ ∧_∧        <⌒/ヽ___
/(ヘ)ヘ    ⊂⌒(  ・ω・) ・・・。  <_/____/ zzzz・・・
         `ヽ_っ⌒/⌒c

68 :
テンプレはどっかのwikiに置いてよ。

69 :
http://info.2ch.sc/
2ch公式のwikiがあるからここ利用したら良いよ

70 :
>>64 勝手に進めてま〜す♪
>>66 "Small is beautifulなんだろう?" は必要ですか?皮肉っぽく不快です
読む気が起きないなら、どこを削除するか具体的にお願いしますとは言えないので、
ごっそり削除した案を上げておきます
長くなった部分は、1.過去ログの内容も多く、他に 2.移植性、3.POSIX、
4.Bourne Shell、5.関連スレや、6.テンプレ変更案を促す内容を追加しましたが、
ほぼ削除しました
>>49 で UNIX FAQ を上げてもらっているので、何らかの参考リンクは
有ってもいいのでしょうが、取捨選択、別途追加は皆さんにお任せします
>>68 >>69 せっかくの提案ですが、今後とも wiki でなくこのスレで進めた方が
良いと考えているので、少なくとも私は作りません。申し訳ない

71 :
長すぎて、読む気がしない
修正、削除
□A. お約束 --- >>42 そのまま
□B. お約束の補足 --- 下記。2, 3, 4 参考リンクへの参照を止め直接記入 5 削除
□C. 初心者へのアドバイス --- >>44 そのまま
□D. 前スレ --- に変更して直前スレのみにする
1. シェルスクリプト総合 その23
 http://peace.2ch.sc/test/read.cgi/unix/1404204950/
□その他 --- 削除

72 :
□B. お約束の補足
1. Mac OS X では、/bin/sh の実体は bash です。また、一般的に BSD 系 や
 GNU/Linux の方は、/bin/sh がシンボリックリンクですので、注意して下さい。
 ls -l /bin/sh や readlink -e /bin/sh で確かめて下さい。
2. ポータビリティーについては、下記を参照して下さい。
 a. autoconf マニュアル 移植性のあるシェルプログラム
  http://www.gnu.org/software/autoconf/manual/autoconf.html#Portable-Shell
  http://www.geocities.jp/fut_nis/html/autoconf-ja/Portable-Shell.html
 b. Portability talk [Bash Hackers Wiki] 英文
  http://wiki.bash-hackers.org/scripting/nonportable
3. POSIX については、man 7 standards や下記
 ( の特に Shell & Utilities ) を参照して下さい。
 The Open Group Base Specifications Issue 7 IEEE Std 1003.1, 2013 Edition 英文
  http://pubs.opengroup.org/onlinepubs/9699919799/
4. Traditional Bourne Shell については、下記を参照して下さい。
 a. The Traditional Bourne Shell Family History and Development 英文
  http://www.in-ulm.de/~mascheck/bourne/
 b. The Heirloom Bourne Shell 英文
  http://heirloom.sourceforge.net/

73 :
テンプレなんてドーデモエー
テンプレ検討だけでスレ埋めるなよ
シェルスクリプトの話しろよ

74 :
ポータビリティーがそのままじゃ通じないとか言ってんじゃねえんだよ
ただ読み方カタカナ表記しただけの長々しいカタカナが君には見やすいのか
俺はそう思わないしカタカナ列挙した糞翻訳は読みづらいし頭に入ってこない
極論すれば英語のままの方がマシだ
で、
できるだけ環境問わずそのまま使えるようにするのは
可搬性の向上なんだよ
移植性だと書き換え前提でその書き換えをしやすくする感じが強くなる
汎用性は可搬性みたいなことよりも*目的*を限定しない感じになる

75 :
/.:::.::.::.::.:: ト\ /∧:.::.::.::|:.::.:: |:.::.::.:.::.::.:.::.::.:.\
.: ::.::.::.::.::. |-‐''"´│:.::.::.|:.::.::.jヽ ::.:.::.:.::.::. |::.:.::.:.
.: ::.::.::.::.: l:|    |:j.::._∧::.:/ ハ.::.::. }::.::.:|^';.::.::'.
.: ::.::.::.::.: |:!=-、  ノ:'!.::;仁∨ j:ハ.:: ;'::.::.::|ノ} :.::.'、    ふ〜ん …で?
.::.::.|.::.::.::.|:ヽ    ∨ '弌示圷 j/.:: /.::| '.::.::.::.:ヽ
.:|.: |.::.::.::.'ャ弌示       ゝ.:ソ /.::./ :.::|/.::.::.::.::.::.::\
.::!八.::.::.::ヘ ゝ.:ソ         ̄´厶:イ :.::.:|、.::.::.::.::.::.::.::.:\
、ヽ.:\.::.::.:.. `  ,         |:i.::.::.::| \.::.::.::.::.::.::.::.:. \
.丶.:\:|>‐ヘ              | .::.::.::|  丶、 _;rz: -‐ ⌒丶、
  \:〈 ^トーゝ_   --、       1 :.::.::.|        //       \
    |ヽ´  ⌒>‐ 、   、<. │.::.::. !      //         丶、
    |.:: \      `く. Y:| \|.::.::.::.|      |:l                \
    |.::.::.::.`7ーr:、    ,ノ::lヽ _|.::.::.: |   / j:j                \
    |.::.::.:: /  |:/    / |::{  |.::.::.: |´ ̄  /:/   、__            \
    |.::.::.:/  /    / .l八 │:.::.: |    |::|     '⌒丶、

76 :
割りと胴で萌ぇ

77 :
テンプレは自分で勝手に決めていいよ。

78 :
いちいち誰にでもわかりやすいようにする必要はない。
ポータビリティで通じるし、通じないならそいつがタコなだけ。
シェルスクリプト書くような奴は、単語の意味を自分で調べるくらいできる。
ここは幼稚園か? 違うだろ? 出来ない奴は相手にしなければいいだけ。
目の前にすぐ調べられる魔法の箱があるのに活用できない奴は、もはや現代では馬鹿の謗りを免れえない。

79 :
bashって$RANDOMが定義済みなんだな。
自分で範囲を決めて作ったランダムを$RANDOMに突っ込んで、
呼び出したときの値の範囲がおかしいから、???ってなったわ。
頭にBASH_つけるとかして欲しかったな。

80 :
>>79
それは bash独自じゃなく、zshでも kshでも同じだよ。
RANDOMを普通変数として使いたいなら、
先に unset RANDOM してから RANDOM=1234 とか自分で代入すれば値は変化しない。

81 :
zshだとunsetしても普通の変数にはなってくれないよ

82 :
純正シェルで使って良いシェル変数は$aから$mの13個だけだと言ってるだろうが。

83 :
いま純正シェルの話じゃないから。

84 :
ファイルがたくさんあって、それら全部に対して
・手っ取り早く文字コードを調べるのにfileコマンドを使う (file *)
・正確に出したい時にiconvコマンドを使う (iconv -f code < filename)
という事をやってたんだが、手っ取り早く正確に文字コードを調べる方法って何かないかな?
むしろ皆のやり方を知りたい

85 :
前スレ http://peace.2ch.sc/test/read.cgi/unix/1383260330/990 のつり餌
> bourneシェルの中でもV1-V6はコマンドラインインタプリタとしての...
> PWBシェルでも動作可能なことが純正シェル道
V1 - V6 は Bourne shell ではなく、Thompson shell
その22 のスレのデフォルトシェルは Bourne shell であって Mashey shell ( PWB shell ) ではない
よって、前スレ >>983 を失格というのは間違い
そもそも、Bourne shell の B は大文字で書く

86 :
純性シェルじゃないと何が困るの?

87 :
>>84
nkf -g

88 :
$()使うなとか言い出す輩がいる

89 :
>>88
$( )を使わないようにすることは、Bourneシェルを基準にすることで達成されるから、
純正シェルまで遡る必要はなくなる。

90 :
nkf←古くて時代遅れ
iconv←今風これからの標準
って認識あるんだけどnkfの方が全体的に使いやすいし
機能も豊富だからつい使っちゃうんだよなあ

91 :
iconvって文字コードにエラーがあるとファイルの途中で異常終了しちゃうから使いにくい。

92 :
>>86
困るとかじゃなく、あれは武道とか精神修練とかそっち系のアレだから。

93 :
nkf入ってないんだよなうちの会社の環境…
別環境でnkf -gがめっちゃ使いやすかったからなんで入ってないんだと思ってしまう
客先環境だから仕方ないんだけどさ

94 :
>>90 にならってみた
nkf ← 日本語 / 自動判定有り / 入っていない事がある / 素敵
iconv ← 多言語 / 自動判定無し / POSIX / i昆布とか名前が嫌い
>>84 が日本語と限定してないので nkf と思っても、考えてしまった
>>91 iconv -c とか?
>>86
コンパイル時に使用するスクリプトでは、場合により v7 shell でも動く様に書いた方がいい
みたいです
autoconf マニュアル (24 April 2012) を見ると v7 shell や SVR2 がどうのと書いています
# commentsも使うなとか言い出す輩です。: comments とかは何かで使った覚えが有るけど
>>78 でポータビリティで通じない奴はタコだと。確かに
>>74 なるほど、全ての場合についてのコメントが参考になります
コンピュータと電算機の様に、カタカナvs漢字については個人・職業差も有りますが、
>>51 >>74 で可搬性を積極的に押される方がいるし、
>>63 >>78 は特にポータビリティ押しではないので、今のところ可搬性に決まりですか?

95 :
テンプレがどうでも良い方は、どうでも良いとして、>>65 >>73 の意見もあるので、
話題が尽きた時等、スクリプトの話の邪魔にならない程度に、遠慮ぎみに進めたいと思います
特にレスが無ければ、長いという意見と可搬性という意見で、>>71 を元に可搬性としたものに
なりそうです

96 :
iconv -c でも駄目な場合がある。
nkfはそういう場合でもデコード頑張る。

97 :
nkfの方が日本語を扱う上で現実的

98 :
この程度のテンプレは長いに入らん
スレ立てる人が面倒で無ければテンプレ付ければいいし
面倒なら誰かに任せてもいい

99 :
いや長い
まぁどうせ1回読んだらもう読まないし長いから何が困るってこともないんだが
その長いテンプレを議論する為に何レスも長文が続くのはゴメンだわ

100 :
>>95
そうそう、
http://peace.2ch.sc/test/read.cgi/bgame/1373037042/
のテンプレと比べたら大したことないよね


100〜のスレッドの続きを読む
latex2html使ってる人いる?
UNIXカフェを作ろうかと思うんですが
ビルJからの手紙
失業者はオープンソースのコードを書くか
SL-C系ザウルス@UNIX板
お前らUNIXが好きな振りをしてるだけですよね
【FreeBSD】 m0n0wall
Windows用の無料Xサーバが欲しい
UNIXガーディアンズ
UNIXのココが(・∀・)イイ!
--------------------
こんなポプテピピックは糞だ!!
【補給食に】高知の自転車乗りPart6【ミレー】
◇北インドカレー
コテハン予想王決定戦 Part2 [転載禁止](c)2ch.net
【Google Maps】Googleマップ18【グーグルマップ】
     大阪って そんなに  財政やばいの??
なにげなくふと思ったこと
【じゃらん×HP】リクルートポイント14【ポンパレ】
東京カメラ部 Part28
☆リアルゴールド★
車カスのベストカー、山と言ったらエアーズロックしかない豪州引き合いに制限速度120kmにしろと主張
【ワカヤマン】マイナンバー実務検定1級 Part2
【かっさん】加藤純一ID無しスレpart2015【ゲームを本気でやる男反省会】
用心棒、椿三十郎(椿は、旧も新も)、面白くて、たまらんよ
BS-TBS 8729
M J K T
電話の非通知解析方法
アマゾンとかのレビューって全くアテにならないよな
ナンパ箱教えてください。
金曜プレミアム・土曜プレミアム 7
TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼