X



シェルスクリプト総合 その37
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2021/10/05(火) 22:49:30.91ID:KsbWuyFp
シェルスクリプトに関する総合スレッドです。

全般
・荒しは無視しましょう。
・丁寧な姿勢を心掛けましょう。
・ネチケット(死語)を意識しましょう。
・「○○(他の言語)でいいやん」は禁止。他のスレに行ってください。
・「POSIX原理主義」「ユニケージ」「USP研究所」はPOSIXとUnixを曲解し
間違ったシェルスクリプトを広めている宗教です。洗脳されないようにしてください。

前スレ: シェルスクリプト総合 その36
https://mevius.5ch.net/test/read.cgi/tech/1614212414/

関連スレ
・【Bash】Windows Subsystem for Linux【WSL】11
https://mao.5ch.net/test/read.cgi/linux/1627507889/
・Bashでプログラミング [転載禁止](c)2ch.net
https://mao.5ch.net/test/read.cgi/linux/1443885102/
・シェルスクリプト総合 その28
https://mevius.5ch.net/test/read.cgi/unix/1533154936/
・zsh その7
https://mevius.5ch.net/test/read.cgi/unix/1337844883/
・過去UNIXで使われていた ksh というシェルについて
https://mevius.5ch.net/test/read.cgi/unix/1582358403/
・【POSIX】UNIXプログラミング【BSD】 [転載禁止](c)2ch.net
https://mevius.5ch.net/test/read.cgi/unix/1443103705/
・おまえら! shell は何を使っているんですか?
https://mevius.5ch.net/test/read.cgi/unix/1012330865/
0002デフォルトの名無しさん2021/10/05(火) 22:50:14.38ID:KsbWuyFp
・特記なき場合、POSIX準拠シェルが既定です(古きBourneシェルはほぼ絶滅しました)
 POSIX準拠シェルは(d)ash, bash, zsh, (m)ksh, yash, posh, (p)boshです
 参考 https://unix.stackexchange.com/questions/145522/
 特定のシェルの専用機能に依存する場合は明示しましょう(特にPOSIX準拠シェルではないfish, (t)csh等)
・POSIX準拠シェルのおすすめは?→多く使われているのはDebian/Ubuntu系のdashです
・bashでいいじゃん→bashがインストールされてない環境があります。環境によってデフォルトシェルの実体は異なります
  Debian系 … dash   CentOS系 … bash   Alpine … busybox ash  Android … mksh
  FreeBSD … ash   Solaris,OpenBSD … ksh
  macOS … bash(Single UNIX Specification準拠のために一部動作が異なる)
・macOSはzshなんだよね?→ログインシェルがzshに変わっただけで/bin/shはbash 3.2です
・シェルスクリプトは可搬性を持たせるために可能な限りPOSIXに準拠しましょう
 仕様 http://pubs.opengroup.org/onlinepubs/9699919799/
・シバンになにを使えばいいの?→POSIX準拠してるなら#!/bin/sh、bashなら#!/bin/bashか#!/usr/bin/env bash
・bash依存はなるべく避けましょう。自覚なきbashism。シバンが#!/bin/shなのにbashに依存する構文を使っていませんか?
・Bourneシェル(≒POSIXシェル)はPOSIX標準化前にUNIXで使われていたシェルで多くの亜種が存在します
 Version 7 UNIXのshに一番近いのはOpenSolaris由来のHeirloom Bourne Shell、次点でSchily Bourne Shellのoboshです
  Heirloom Bourne Shell: sh http://heirloom.sourceforge.net/sh.html
  Schily Bourne Shell: obosh http://schilytools.sourceforge.net/bosh.html
 歴史的資料 https://www.in-ulm.de/~mascheck/
・csh/tcshでのシェルスクリプトは*まったく推奨しません*
  参考 http://www.speech-lab.org/~hiroki/csh-whynot.euc
・Linux/UNIXにはシェルスクリプトに便利な小さなコマンドがいろいろあります。Manページや各種リンクを見ましょう
・ワイルドカード・パターンは正規表現ではありません。正規表現の話題は正規表現スレへ
・シェル芸とシェルスクリプトは全く異なります
・シェルスクリプトのことをシェルってゆうな
0003デフォルトの名無しさん2021/10/06(水) 17:20:42.12ID:XJEs7oM2
2ゲット
0004デフォルトの名無しさん2021/10/08(金) 03:54:38.51ID:LzOvy0cf
3げと
0005デフォルトの名無しさん2021/10/09(土) 07:02:28.75ID:F/g3bnt2
げっとわいるど
0006デフォルトの名無しさん2021/10/12(火) 17:53:02.51ID:elEZT6pO
つーか真偽値の問題じゃなくて
シェルスクリプトのifが終了ステータスを判断するコマンドってだけだろ
0007デフォルトの名無しさん2021/10/12(火) 17:54:35.21ID:elEZT6pO
あとシェル関数が返すのも終了ステータス
戻り値じゃない、そもそも終了ステータスしか返せないだろ
returnだからって他の言語のretruntを同じだと思うなよ
0008デフォルトの名無しさん2021/10/12(火) 17:59:10.51ID:FcrICImt
>>6
だから真偽値の問題でしょw
お前、いい加減自分で何言ってるかわかってないだろw
それを言ったらC言語のifだって値を判断するだけのコマンド(文)って
なっちゃうだろwww

だれかがboolean型持ち出したから、混乱してんのかもしれないけど、
昔のC言語にはそんな型ねーからな?w
0009デフォルトの名無しさん2021/10/12(火) 18:01:19.29ID:FcrICImt
結局、Cでも(その他でも)シェルスクリプトでさえも、
ifってのは式の値を真偽に判断するものなんだよ。
0010デフォルトの名無しさん2021/10/12(火) 18:04:36.01ID:FcrICImt
だから、シェルスクリプトが他と違って特殊なのは、
式の値を0の場合を真と判断するところ、だけだよ。
それがexit statusであるかとかは全く関係がない。
要点はそこだけ。
0011デフォルトの名無しさん2021/10/12(火) 18:05:26.22ID:h64P2lE5
>>ID:FcrICImt
本当に、前スレ>>984で言われた通りだな
if command; then
で、commandのとこにコマンドを書いたことないのか?

プログラミングにおいて、問題なく実行できたら別にどうとかはないが、失敗した時には原因が欲しいのは当然
コマンドの実行においても同じ。だから、成功できた場合は 0 で、それ以外の値は失敗になるのも当然。エラーの場合のExit Statusの値を規定できてなかった/してなかったからから「含み」を持たせてるだけになってるが
(よくわからんが、JCLとやらも同じそう)

>シェルスクリプトで、0がノーエラーでなければいけない理由はif文の条件式の判定が
>特殊だから。
逆だよ、上に書いてある通り、また、前スレ>>936のK&Rが言っている通り、0 が正常(お前の言う「真」)が先だよ

シェルスクリプトがコマンドを実行するためのものなんだから、成功=0(=お前の言う「真」)とするのも独特でもなんでもないな。他の言語と比べると独特と見えるのかもだが
command && command
とか、常識的に見えるだろ?上手く整合性があるようにできてるんだよ

つづく
0012デフォルトの名無しさん2021/10/12(火) 18:05:36.77ID:h64P2lE5
つづき

真偽に拘りたい真偽でしか理解できないなら、
他の言語は 「評価式の結果 != 0」
シェルスクリプトは「コマンドを実行した Exist Status == 0」
がどちらも暗黙的に行われてると思えばいいだろ
これなら純粋(=完全な2値になる)真偽だしな

他の言語で
value = 何か
if (value != 0)
...
シェルスクリプト
if コマンドのExit Status == 0; then
...

前スレ>>989なんて言ってるけど、確かにWindows APIはBooleanで返すのが多い
だがそれはWindows APIの文化でしかない、シェルスクリプトの本家wであるUnixで何か書いたことがあるなら文化が違うとわかりそうなもんだが、なぜかWindows APIのが全てと言ってそうな前スレ>>989
WSLからのにわかか?
何かまだ言い張ってるなあ
0013デフォルトの名無しさん2021/10/12(火) 18:06:45.20ID:FcrICImt
あ、あとついでに言っとくと、終了コードを判断するしかないのは、シェルスクリプト
はそれ自体がそもそも計算ができないからw
そうならざるを得ないのは、この点にかかるw
0015デフォルトの名無しさん2021/10/12(火) 18:16:00.36ID:FcrICImt
ID:h64P2lE5はそもそもプログラミング言語というものを理解できてないんだなw
いや、プログラミングが理解できてないのか?w
あと日本語も多分理解できてないんだろうなw

で、結局、ID:h64P2lE5は何が言いたいんだ?w
もうさっぱり分からんよw
0016デフォルトの名無しさん2021/10/12(火) 18:19:01.30ID:FcrICImt
え?まさか、>>10を否定しているの?w
シェルスクリプト以外のプログラミング言語を少しは勉強したら?w
つかシェルスクリプトも書けそうな気がしねーけどな、ID:h64P2lE5はw
0017デフォルトの名無しさん2021/10/12(火) 18:20:12.34ID:h64P2lE5
>>15
お前にわかりやすいように書いてやったのにw
全く理解できないんだな。もしくは認めたくないからのか?その何の内容もないただの無意味な誹謗wなのだけは
0018デフォルトの名無しさん2021/10/12(火) 18:21:35.92ID:h64P2lE5
>>16
お前の根本的なプログラミング/プログラミング言語の誤った理解だよ、否定してるのは
よく「日本語も多分理解できてないんだろうな」とか言えるな
0019デフォルトの名無しさん2021/10/12(火) 18:22:26.42ID:FcrICImt
>>17
だから、結局何が言いたいんだよw
お前の文章は支離滅裂で関係ないところに
あっちこっち飛ぶから、ものすごくわかりにくいよw
まずは、>>16に答えてくれやw
0020デフォルトの名無しさん2021/10/12(火) 18:24:29.03ID:h64P2lE5
>プログラミング言語というものを理解できてないんだなw
>いや、プログラミングが理解できてないのか?w
>あと日本語も多分理解できてないんだろうなw
>シェルスクリプト以外のプログラミング言語を少しは勉強したら
>つかシェルスクリプトも書けそうな気がしねーけどな
>お前の文章は支離滅裂で関係ないところにあっちこっち飛ぶから
すげえな、改めて見ると。この異常さは何か察してしまうな
0021デフォルトの名無しさん2021/10/12(火) 18:25:31.96ID:FcrICImt
>>18
「根本的なプログラミング/プログラミング言語の誤った理解」をしているのはお前だよw

例えば、Cでさ、
if (0) {printf("true");}else {printf("false")}
として実行したら何が表示されると思う?w

trueが表示されると思ってる?w
0022デフォルトの名無しさん2021/10/12(火) 18:27:51.86ID:h64P2lE5
>>21
>>12で既に書いてるんだけどな

そんな初心者的な問いかけををして...可哀想に
俺が初心者にも劣ると?馬鹿にしてるつもりなんだろうが、そんなこと平気で書けるお前の程度が知れるだけ
御愁傷様です
0023デフォルトの名無しさん2021/10/12(火) 18:28:56.01ID:FcrICImt
>>21
まあ言わずもがなだろうけど、
同様のコードで、trueが表示される言語を
俺はシェルスクリプト以外に知らないわw
他ある?w
0026デフォルトの名無しさん2021/10/12(火) 18:30:59.65ID:FcrICImt
>>22
初心者的な問いかけされてるのは、
お前がそう疑われてもしょうがない言動を
してるからしょw甘んじるよりしかたなかろうw

で、御託はいいから答えなよ。初心者じゃないつもりならw
0028デフォルトの名無しさん2021/10/12(火) 18:32:21.39ID:h64P2lE5
>>26
>俺が初心者にも劣ると?馬鹿にしてるつもりなんだろうが、そんなこと平気で書けるお前の程度が知れるだけ
本当に読まないな、お前は
0029デフォルトの名無しさん2021/10/12(火) 18:34:03.18ID:h64P2lE5
>>27
自分は見苦しくないと思ってるのか...マジもんかよ
お前の行動なんてある意味もう見透かされてるんだけど、それにも気づかないしなあ、お前は
0030デフォルトの名無しさん2021/10/12(火) 18:34:40.41ID:FcrICImt
>>28
自分の発言の引用?w
お前こそ読めよw
答えろよw

そもそも==ってのは「比較演算子」であって、
0031デフォルトの名無しさん2021/10/12(火) 18:37:47.06ID:FcrICImt
あーあ、ミスってしまったw

そもそも==ってのは比較演算子であって、値を算出するものだ、ってのは理解してるかな?w

ま、読まないし、聞かないし、基礎もだめ、なのを相手にしても無益か。
ID:h64P2lE5
は結局、核心を突かれた質問をされると相手を罵倒して逃げるだけのクズだということでw
0034デフォルトの名無しさん2021/10/12(火) 18:40:50.86ID:h64P2lE5
>>31
そんなことも平気で言えるんだからなあ...つくづく程度が知れる
それも>>11に書いてることだぞ
0036デフォルトの名無しさん2021/10/12(火) 18:46:33.75ID:FcrICImt
>>34
お前さ、本当に俺の書いてあること読めてる?理解できる?
お前のようなやつを「おさとが知れる」っていうんだぞ?w
ボキャも貧弱で、おまえの日本語能力すらも程度が知れるんだがw

だからさ、結局、何が言いたいの?w
シェルスクリプトの真偽判定は特殊ではない、
Cと同じだ、と言いたいの?w

で、それは違うよ、って言ってるんだけど、まだ分からない?
日本語が理解できないの?w
0037デフォルトの名無しさん2021/10/12(火) 18:49:13.63ID:FcrICImt
あと、なんで、そんなに自分の発言引用したがるの?ID:h64P2lE5
自作自演してるの?w
0038デフォルトの名無しさん2021/10/12(火) 18:50:53.32ID:h64P2lE5
>>35
あ...
>読まない D:h64P2lE5 が悪いw
何やねん、俺

>>11の冒頭でも書いてるけど、
value = 何か
if (value != 0)
...
ってあるだろ?なんか知らんアホな問いかけに当てはめると、
if (0 != 0)
...
になるわけだよ、!= 0 が暗黙的を明示しての表記
で、0 != 0 は純粋な二値Booleanになるわけだよ。もちろん false のな
そういうこと言ってるのに理解できないんだからなあ...
多分これも理解できないとか言い出すだろうけど

>>37
既に書いてることをアホのようにそれが無いようにお前が聞くからだな
0039デフォルトの名無しさん2021/10/12(火) 18:58:52.25ID:FcrICImt
>>38
!=
ってのが比較演算子であって、計算をしている、ってのは理解できる?
「0 != 0 は純粋な二値Booleanになる」
ここが判ってないな、と思うわw

プログラミング言語ってのはそれをBooleanにしてるわけじゃないんだよw
「0かそれ以外」に分けてるだけなんだよw
(アセンブラを分かれば、こんなことは自明なんだけどねw)
概念的にbooleanと言ってるかもしれないけど、それは単に概念的な話であって、
実際とは違う。

ま、比較演算子については1か0かしか返さないよ。
でも、それは比較演算子だから、であって、例えば、算術演算子使って
if ( 1+1 ) {..}
でも成立するってのはわかってる?w
0040デフォルトの名無しさん2021/10/12(火) 19:03:07.20ID:h64P2lE5
>>39
んー...
>>11の冒頭でも書いてるけど、
>>12の冒頭でも書いてるけど、
な。すまん

>>36
11に既に書いてる
わかりづらいのはあるかもだがw、もう根本的にはお前の理解不足(知見の無ささによる)としか思えんから、頑張って読んでね

>>39
「計算」をした結果が、純粋な二値Booleanになるんだけど?
自分で「比較演算子については1か0かしか返さないよ」って書いてるくせに何を言ってるの?
だから暗黙的に != 0 がされてると「思え」と言ってるんだが、まだわからんのだが
if ( (1+1) != 0 ) {..}
ってことがわからないんだな...知識が無さすぎだろう
0041デフォルトの名無しさん2021/10/12(火) 19:10:50.57ID:FcrICImt
>>40
>「計算」をした結果が、純粋な二値Booleanになるんだけど?
だから、そこが判ってないだろw
「二値Booleanになる」のではなくて、「二値Booleanとして判断する」だけ。
だから、「思え」とかいうお前の独善的な命令なんか知ったことじゃないん
だってw

> if ( (1+1) != 0 ) {..}
> ってことがわからないんだな...知識が無さすぎだろう
だから、お前がそう理解したい、って言うんなら、それは間違いではない、とは言ってやるよw
でも、それは「正しい」わけじゃないし、「唯一の間違いじゃない解」でもないんだよ。
頭悪すぎだよ、お前。

あとさ、本当に俺の書いたことをお前は読んだの?俺の言いたいことはちゃんと書いてあるし、
理解できるのなら、お前は俺に対して行った数々の暴言を詫びるべきじゃないかな。
0042デフォルトの名無しさん2021/10/12(火) 19:16:26.06ID:4emiI4KE
ID:FcrICImtはなんかいうたびにアホが漏れとるな。w

そんなんでイキっとったらアカンで!
相手にしてもらえるのはここだけなんやし。
ほかやったら完全スルーやで。
0043デフォルトの名無しさん2021/10/12(火) 19:17:47.05ID:FcrICImt
ID:4emiI4KE
本当にボキャないな、お前w
日本語をまず勉強しようなw
0044デフォルトの名無しさん2021/10/12(火) 19:18:04.33ID:h64P2lE5
>>41
ごまかしか?
>!=
>ってのが比較演算子であって、計算をしている、ってのは理解できる
>「0 != 0 は純粋な二値Booleanになる」
...
>ま、比較演算子については1か0かしか返さないよ

に対してだぞ。「1か0かしか」は明らかに 純粋な二値Boolean だろうが、何を言ってるのか

お前は一般的な話で、
if true
next sentence
というようなこと言っただろう?そんなに真偽(true/false)に拘りたければの話だぞ
なら>>12って話で、他の言語もシェルスクリプトも暗黙的にやってると思えばそれにも合うって話なのに、つくづくお前は自己都合だな

まさか暗黙的ってことがわからないとかあるのか?>>39のあたりから薄々感じてるけどw
0045デフォルトの名無しさん2021/10/12(火) 19:25:08.03ID:FcrICImt
>>44
> に対してだぞ。「1か0かしか」は明らかに 純粋な二値Boolean だろうが、何を言ってるのか
まだわかんないの?w
1も0もBooleanじゃないよwここで言ったのはまさに数としての1と0なんでねw
「Booleanとして判断するなら」、1はtrueで0はfalseと「解釈できる」だけの話だよ?w

真偽に拘りたければ、の下りは一体何を言ってるのか分からんよw
せめて、俺の具体的な言葉を使ってもらえんかね?
あと「暗黙的」なんて話はそもそもした覚えがないしなぜそのような言葉がここで
突拍子もなく出てくるのか分からんよw
0046デフォルトの名無しさん2021/10/12(火) 19:33:54.34ID:h64P2lE5
>>45
>1も0もBooleanじゃないよw
知識が貧弱すぎて話にならないな
Booleanって言語での「型」だけだと思ってるんだろうな
1/0 (別に他の何かでもいいけど) 2値で真偽を表すのはBooleanなんだけど、それを知らないというのはわかった
自分で1が真だとも言ってる風なくせに

>>12 が全く読めてないのはわかった。「暗黙的」という意味がわからなかったというのもわかった
何かまた誤魔化してるようだけどな(誤魔化してるというかまだわかってない故にかもしれんけどw)

場合によっては真偽を言い、場合によっては言語特有のことをいい、ベース知識がないからフラフラしてんだよ、お前は
いや、単に何かいい負けたくないwだけか?w
0047デフォルトの名無しさん2021/10/12(火) 19:36:18.86ID:FcrICImt
あ、あとさあ、
プログラミング言語の話をしてるときに、JCLを持ち出すってのはどうかな、と思うわ。
そもそもJCLって規格があったりする言語でもないだろうし(あんの?w大型は
ほとんど使ったことないから知らんけどw)
ID:h64P2lE5はプログラミング言語をCとシェルスクリプトくらいしか知らない、って読めるけど。
0048デフォルトの名無しさん2021/10/12(火) 19:39:21.53ID:h64P2lE5
>>47
歴史的なことだよ、よく知らんけど
コマンド(小さなプログラムの)の実行と制御という点ではシェルスクリプトは近しいだろう

>ID:h64P2lE5はプログラミング言語をCとシェルスクリプトくらいしか知らない、って読めるけど。
また、言い出してるw
0049デフォルトの名無しさん2021/10/12(火) 19:42:53.55ID:FcrICImt
>>46
知識が貧弱なのはお前だろw
で、なに、俺の書いた表現が間違ってると、
お前は強弁するわけね?w
解釈って言葉の意味は分かる?

じゃあさ、余計な御託は要らないから、俺の書いた文章のどこがどう
間違ってるか具体的に指摘してもらえるかね?

俺はお前がどう間違ってるか、具体的に指摘したよな。
それに対してお前は「知識が貧弱」だの、型だけだの、全然筋違いの「文句」を
並べただけだよな?(こういうのが「御託」ね?w)

あと凄く勘違いしているようだが、そもそも俺の書きこみに喧嘩売るような真似を
したのはお前の方だからな?
0050デフォルトの名無しさん2021/10/12(火) 19:46:05.80ID:FcrICImt
>>48
>>48
あ、そw
ああ、そりゃ似てるねえw
コップとたらいが似てる程度にはねw

で、アセンブラは書いたことあるかい?w
0051デフォルトの名無しさん2021/10/12(火) 19:48:23.86ID:h64P2lE5
>>49
また、まだ、めんどくさいことを言い始めてる
>>11,12で言い尽くしてる

お前の無知さからくる書いてること理解できないで(、また誤魔化しでw)、>>11,12に対して「お前が」わけわからんこと喚いているんだよ
「具体的」とやらもそれに対して「具体的」に返してるんだが、それに対してまた理解できないで(、また誤魔化しでw)ごちゃごちゃ言ってるくせによくいうよ
0052デフォルトの名無しさん2021/10/12(火) 19:51:09.23ID:h64P2lE5
>>50
書いたことはあるな
今は読める程度だけどな
何で高級言語wで0か0以外かって話/自慢(w?)したいのか?
またしょうもない質問するなあ
0053デフォルトの名無しさん2021/10/12(火) 19:55:09.09ID:FcrICImt
>>51
めんどくさいのはこっちだよw
何も間違ったことなど一つも書いちゃいないのに、
なんか、チンピラみたいなID:h64P2ltE5に因縁つけられて
絡まれて。

結局、また核心突かれると罵倒くりかえして逃げるんだねw
で、解釈って言葉の意味は分かるの?w
どうして指摘されたことにきちんと返さないの?w
これじゃ議論どころか会話にもならんよw
0055デフォルトの名無しさん2021/10/12(火) 19:57:36.66ID:FcrICImt
>>52
まさか、0か0以外かなんてことを理解している程度で自慢になるなんて思いもしなかったわw
0056デフォルトの名無しさん2021/10/12(火) 19:58:03.26ID:h64P2lE5
>>53
>>20の例みたいなこと書いておいてよく人のことをチンピラとか言ってるな
>>20の例みたいなこと書いてよく人のことを「また核心突かれると罵倒くりかえして」
そして>>54のようなレスを書くとw
つくづくお前ってやつわwww笑えすぎだろう
0057デフォルトの名無しさん2021/10/12(火) 19:59:35.46ID:4emiI4KE
>>43
ちゃんと書いてやっても、どうせおまえは読めないやん?w

中途半端なCとアセンブリの知識を、シェルスクリプトにムリヤリ適用すんのはアホすぎやぞ!
0058デフォルトの名無しさん2021/10/12(火) 19:59:53.17ID:h64P2lE5
>>55
アセンブリとか急に言い出したからな
自分でわけわからんこと急に言い出しておいて、思いついたように俺が言ったフレーズを真似てるようなこと言って...としか思えんぞ。しかもお前だからなw
0059デフォルトの名無しさん2021/10/12(火) 20:00:50.43ID:h64P2lE5
>>57
>ちゃんと書いてやっても、どうせおまえは読めないやん?
そう思う俺以外のが居て嬉しいぞww
0060デフォルトの名無しさん2021/10/12(火) 20:03:47.53ID:FcrICImt
>>58
俺がお前と似たフレーズを使うのは、お前に
わかるようにわざわざ似せてるからだよw
そんなこともわからないのかよw

>>57
だから、できるならやってみせろよw
おまえが何書いたっていうんだwスネオみたいなやつだなw
0061デフォルトの名無しさん2021/10/12(火) 20:04:19.68ID:elEZT6pO
>>8
お前本当にわかってないのかw

C言語のifは真偽値を判断するもので
シェルスクリプトのifは終了ステータスを判断するものなの

C言語のreturnは戻り値を返すもので
シェルスクリプトのreturnは終了ステータスを返すものなの

C言語でもmain(コマンド)のreturnは正常時に0を返さないのいけないの
シェルスクリプトはすべての関数がコマンドと同じ扱いだから正常時に0を返すの

理解できたか?
0062デフォルトの名無しさん2021/10/12(火) 20:05:29.05ID:h64P2lE5
>>60
また誤魔化しだな
マジでそうだったのかww
お前が無能としか思えんけどな。そして可哀想にとしか思えんけどな
0063デフォルトの名無しさん2021/10/12(火) 20:08:03.12ID:FcrICImt
>>61
お前本当にわかってないのかw

C言語のreturnの戻り値ってのはifで判断されることは
理解してないの?w

一体、何を理解しろ、と?w
0064デフォルトの名無しさん2021/10/12(火) 20:09:04.16ID:FcrICImt
>>62
ごまかしてんのはお前でしょw
逃げて罵倒するだけしかしてないお前のようなのを
無能、と呼ぶんじゃないかなあ?w
0065デフォルトの名無しさん2021/10/12(火) 20:10:37.66ID:h64P2lE5
>>64
お前はすげえなああ
>逃げて罵倒するだけしかしてない
自分ではしてないつもりらしいww
すげえよお前www大笑いさせる才能あるぞw
0067デフォルトの名無しさん2021/10/12(火) 20:12:46.01ID:h64P2lE5
>>66
マジか...www
そりゃそうだないい負けたくないんだろ?www故にそんなこと言えてしまうとしか思えん
天才的爆笑王の称号をあげたいw
0068デフォルトの名無しさん2021/10/12(火) 20:15:05.91ID:FcrICImt
>>67
マジか...www
そりゃそうだないい負けたくないんだろ?www故にそんなこと言えてしまうとしか思えん
天才的爆笑王の称号をあげたいw
0070デフォルトの名無しさん2021/10/12(火) 20:19:38.91ID:FcrICImt
まあ、馬鹿を相手にしても不毛だから、ほっとくとして。

結局、俺が言いたかったのは>>10だけね。
(ID:h64P2lE5にはどうせ聞いても無駄だからほっといて)、
なんか異議あるかい?w
0071デフォルトの名無しさん2021/10/12(火) 20:24:05.47ID:h64P2lE5
>>70
>>11,12と既に書いてるw
まあ、結局読めないんだからなあ
読んでくれてると思うお前以外は、たぶん
少なくともお二人から何か言われては居ないからなw
0072デフォルトの名無しさん2021/10/12(火) 20:25:25.50ID:FcrICImt
>>71
そう書くんだろうと思ったからお前には聞かない
って言ってんだろ。日本語読めないのか、お前は。
0074デフォルトの名無しさん2021/10/12(火) 20:31:54.17ID:FcrICImt
>>73
本当に日本語が読めないんだねw
どうしても構ってもらえないといやなのかw
君も>>10が正しい、と認めてるって解釈していいかい?w
間違っている、というのなら、まずは、簡潔にどこそこがおかしい、
と書いてくれる?w
0075デフォルトの名無しさん2021/10/12(火) 20:35:37.96ID:h64P2lE5
>>74
日本語読めない=俺の言う通りにしない/ならない
でしかないくせにwwwさすが天才的爆笑王

>>11,12で否定してるんだが。そもそも>>10はモロ馬鹿なことを言ってるんだけど
>それがexit statusであるかとかは全く関係がない
>>11,12でその間違いを指摘してるんだけど、読めない読まないんだからなあ
0076デフォルトの名無しさん2021/10/12(火) 20:44:29.90ID:FcrICImt
>>75
>>10に関しては関係がないなw
別にそれに縛られなきゃならない理由はないだろw
ただ単にその方が都合がいいから、そうしてるだけだからなw
それを持って、>>10を間違いと言うのなら、そりゃお前の思考方法
が間違ってるよw
0077デフォルトの名無しさん2021/10/12(火) 20:46:45.57ID:FcrICImt
ID:h64P2lE5は日本語がじゃなくて、考えるのが苦手なんだねw
よくわかったよw
0078デフォルトの名無しさん2021/10/12(火) 20:47:13.55ID:h64P2lE5
>>76
「それに縛られる」の「それ」ってなに?
exit status のこと?だったら縛られる、というか前提にするに決まってる
シェルスクリプトおよびCがどういう経緯で作られたのか知らんのか
(JCLもその流れのうちに入るだろうという話なんだが、わかってなさげだしな)
0080デフォルトの名無しさん2021/10/12(火) 20:50:10.79ID:4emiI4KE
>>70
「式」でイキんな!ってゆうたやろ!
何回言わすんや!
アホなん?

>>60
前スレからずぅっと教えたってんのに。。。
アホなん?
0081デフォルトの名無しさん2021/10/12(火) 20:52:05.04ID:elEZT6pO
>>63
> 一体、何を理解しろ、と?w

C言語のreturnじゃなくて
シェルスクリプトのreturnを理解しろと言ってる
0082デフォルトの名無しさん2021/10/12(火) 20:53:48.29ID:FcrICImt
>>78
前提にするのが決まっていようがなんだろうが、そうでなきゃならん理由はないだろw
そして、0を真とするのがプログラミング言語として特殊なことも間違いないなw
それとも0を真とするのは多数派である、と強弁するのか?w
そして、Cは0は偽だよw
0083デフォルトの名無しさん2021/10/12(火) 20:55:08.20ID:FcrICImt
>>81
そこに反応するんじゃなくて、指摘されたところに
ちゃんと返したら?w

一体なんなんだろうねえ、この連中はw
0084デフォルトの名無しさん2021/10/12(火) 20:55:46.77ID:cBlO5Xil
>>78
> シェルスクリプトおよびCがどういう経緯で作られたのか知らんのか

シェルスクリプトはC言語から置き換えるために作られた
Unix哲学にはシェルスクリプトの方が移植性が高いとい書いてる
C言語は移植性がないから使い物にならない
Unix哲学ではシェルスクリプトをC言語に書き直すなって書いてある
つまりC言語からシェルスクリプトに書き直すために作られたものだ
シェルスクリプトはどこでも動く!シェルスクリプトで何でも出来る!
POSIX原理主義を信仰せよ!
0085デフォルトの名無しさん2021/10/12(火) 20:56:55.48ID:h64P2lE5
>>82
>前提にするのが決まっていようがなんだろうが、そうでなきゃならん理由はないだろ
むちゃくちゃ言い出しましたーーーwww
あれか?シェルスクリプトってUnixが出る前から何らかの構想があったとでも思い込んでるのかな??

>そして、0を真とするのがプログラミング言語として特殊なことも間違いないなw
だーかーらーーー、真偽に(それもその値に)拘るなら、暗黙的に == 0 が付いてると思えばいいだろw

やっぱりすごいな天才的爆笑王
0086デフォルトの名無しさん2021/10/12(火) 20:58:00.87ID:h64P2lE5
>>83
>この連中はw
自分一人が正しいとそこまで言い張るのか
wwwwwww すごすぎだな天才的爆笑王は。それ以上の称号をあげたいくらい
0087デフォルトの名無しさん2021/10/12(火) 21:02:04.59ID:FcrICImt
>>85
だーかーらーーー、w
==0が付いていると思えばいいとか知ったことじゃないんだよw
お前がそう思いたければ思えよw勝手にしろよw

シェルスクリプトが0を真とする、というところで他と違う=特殊だと
指摘しただけだw

そもそも、なんだって、お前は俺の先生かなんかみたいにになろうとしてんの?w
いくらなんでも、その思考力じゃ自惚れが過ぎない?w
0088デフォルトの名無しさん2021/10/12(火) 21:05:16.69ID:h64P2lE5
>>87
お前が「言い張って」「拘ってる」ことに対してなのに
本当にお前ってやつはw「知ったことじゃない」だってwww

>お前は俺の先生かなんかみたいにになろうとしてんの?
>いくらなんでも、その思考力じゃ自惚れが過ぎない?w
wwww 妄想すげーーーーーwwwww
マジですげえなああ、本当にww
ちょっと笑い疲れたぞw

大笑いできるけど、ここまで無知を拗らせてこうなるとある意味怖い面もあるな
大笑いから一息ついて、遠目で考えてみるとww
0089デフォルトの名無しさん2021/10/12(火) 21:06:02.51ID:C/eJVmIN
>>87
いや、だから0は真じゃなくて偽なんだが?
証拠

if (( 0 )); then
 echo 真
else
 echo 偽
fi
0090デフォルトの名無しさん2021/10/12(火) 21:07:36.55ID:C/eJVmIN
コピペしやすいように一行にしてやる

if (( 0 )); then echo 真; else echo 偽; fi


if (( 1 )); then echo 真; else echo 偽; fi


if (( 2 )); then echo 真; else echo 偽; fi


if (( -1 )); then echo 真; else echo 偽; fi
0094デフォルトの名無しさん2021/10/12(火) 21:10:27.73ID:FcrICImt
>>88
お前は本当につまらんね。
結局、核心をつかれるとまた罵倒して逃げるだけ。
なんだか九官鳥かなんかと会話している気がしてきたわ。

で、じゃ、いいよな。

シェルスクリプトは真偽の判定において、0を真とする、という点に
おいて特殊である。
これは真である、ということで。
0096デフォルトの名無しさん2021/10/12(火) 21:13:31.20ID:h64P2lE5
>>94
また「核心をつかれると」だって
何言ってるんだかwそれこそ自惚れだぞwwwmまあ、目も当てられない自惚れすぎは>>83の最後とかも明らかで、無自覚なんだろうけど

馬鹿馬鹿しい、また、何をまた変なことを急にって話でしかないからなんだが
さすがだな本当にw
0097デフォルトの名無しさん2021/10/12(火) 21:13:36.59ID:FcrICImt
>>89
え?w
それはちょっと汚なくないかね?w
それはbashの拡張だろうw
シェルスクリプトと言ってるのに、それはずるいw

ま、面白い反論ではあるとは思うよw

>>90みたいなことをやらなければ、もうすこし相手してもいいんだけどね。
0099デフォルトの名無しさん2021/10/12(火) 21:19:22.22ID:C/eJVmIN
>>97
> それはbashの拡張だろうw

ちがう、kshの拡張
ほとんどシェルはkshをパクってるからほとんどのシェルで動く
これがシェルスクリプトの仕様と言っても過言じゃないよ
0100デフォルトの名無しさん2021/10/12(火) 21:22:46.48ID:FcrICImt
>>99
kshかwまだIBMは使ってんだろうなあw
ま、それはそれとしても、

過言じゃない、と言っても、それを
シェルスクリプトの仕様だ、と強弁するのは
おかしいだろw
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況