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

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

レス数が1000を超えています。これ以上書き込みはできません。
0001名無しさん@お腹いっぱい。2012/06/08(金) 00:35:51.19
シェルスクリプトの総合スレです。
スクリプトのお勉強・自慢・腕試しなどにどうぞ。

□お約束
・特記なき場合は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 でトレースしましょう。

前スレ
シェルスクリプト総合 その19
http://toro.2ch.net/test/read.cgi/unix/1323515200/
0978名無しさん@お腹いっぱい。2012/11/13(火) 12:34:55.40
ポジックス(笑)には載ってないから使っちゃ駄目
ハイ論破
0979名無しさん@お腹いっぱい。2012/11/13(火) 12:38:30.29
ポンッと押すだけでパッとつく
ハイポンパ
09809712012/11/13(火) 13:17:00.75
Mac OS 10.8.2(Mountain Lion) の /usr/bin/find 。
-quit は、効くけど、/usr/bin/man find には出てこないという…
0981名無しさん@お腹いっぱい。2012/11/13(火) 13:43:17.37
Macは知らんわ。
0982名無しさん@お腹いっぱい。2012/11/13(火) 14:51:52.16
何なら知ってる?
0983名無しさん@お腹いっぱい。2012/11/13(火) 18:55:48.29
カレーパン
0984名無しさん@お腹いっぱい。2012/11/13(火) 19:03:34.72
manも完全じゃないしな

日本語manに至っては、数年前から誤記が放置だ
0985名無しさん@お腹いっぱい。2012/11/13(火) 19:12:08.46
manはobsoleteで今後更新されないから、
今後はアンサーブックを使えって聞いたよ。
もちろん閲覧はHotJavaを使うこと。
0986名無しさん@お腹いっぱい。2012/11/13(火) 20:28:03.43
>>984
お前も放置してる1人だろ。
0987名無しさん@お腹いっぱい。2012/11/14(水) 10:18:00.47
FreeBSDの find(1)のman に -quit ないね

MacOSXもその状況をひきずっていそう
0988名無しさん@お腹いっぱい。2012/11/14(水) 11:31:26.58
.\" $FreeBSD: head/usr.bin/find/find.1 240299 2012-09-10 07:56:59Z des $
にはあるよ。いつからあるかは知らない。
0989名無しさん@お腹いっぱい。2012/11/14(水) 12:06:38.79
コードの方は2008/2、マニュアルは2012/9だな。
コメントが
Document -quit, four and a half years after it was implemented.
だと。
0990名無しさん@お腹いっぱい。2012/11/14(水) 14:08:21.73
>989
まーじーでーーー
0991名無しさん@お腹いっぱい。2012/11/14(水) 20:51:36.07
だから、そういうおかしなmanページの差し替え版を売り、サポートもするという商売が
成り立つのだよね
0992名無しさん@お腹いっぱい。2012/11/14(水) 21:39:15.28
-quit なんてのは逃げだろ。
男らしくない。
BSD にはいらん。
軟弱な Linux でも使ってろ。
0993名無しさん@お腹いっぱい。2012/11/15(木) 00:12:41.93
こうして*BSDユーザのオサーン率が高まり、犬女ばかり増殖する…。

ってか次スレ建てろよ>>980
0994名無しさん@お腹いっぱい。2012/11/15(木) 16:34:11.28
{Free,Net,Open}BSDは人がいないからドキュメント更新遅れてる。
実物より古いバージョンのままなんて日常茶飯事。
0995名無しさん@お腹いっぱい。2012/11/15(木) 18:59:46.37
なぜ動かないのでしょう?

#!/bin/sh
/usr/bin/cc $argv[1].c -o $argv[1] -lm
0996名無しさん@お腹いっぱい。2012/11/15(木) 19:28:10.21
>>995
1点。

ハイ次の方どうぞ
0997名無しさん@お腹いっぱい。2012/11/15(木) 19:30:19.71
ガッコでは動いたんやshの場所もccの場所も確認したんや...
(´・ω・`)
0998名無しさん@お腹いっぱい。2012/11/15(木) 19:41:03.39
zshでも/bin/shで起動されるとsh互換になるはずなんだがな
0999名無しさん@お腹いっぱい。2012/11/15(木) 19:43:50.00
$argv[1] って・・・
/bin/shじゃねぇのか?
C,PHP,Perlとかならおkだろうけど
shなら$1ちゃうんかい?
1000名無しさん@お腹いっぱい。2012/11/15(木) 19:45:03.49
スマソ
動いてはいるんだけども
cc:エラー:[1].c:そのようなファイルやディレクトリはありません
って怒られる...(´・ω・`)あるのに
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。