[過去ログ] シェルスクリプト総合 その31 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
53(1): デフォルトの名無しさん [sage] 2019/08/11(日) 18:50:32.73 ID:++HFlOfG(22/35) AAS
>>5151(2): デフォルトの名無しさん [sage] 2019/08/11(日) 18:49:00.05 ID:k+c7cOcw(10/23) AAS
>>ID:++HFlOfG
なんで逃げる、やらかしたのは明らかだろう。カスなのか?
まあ、想像できるよ、常時偉そうにしたいんだもんな。普通のレス、単純なミスに対してもたかーいところからのいきなりなダメだしとか普通だもんな。そんなお前が自分の過ちを認めたらプライドがズタズタにでもなるんだろう
...カスだなw
お前、文句言ってるだけじゃんw
やらかしてる部分はどこかを書けば、
やらかしてないという説明をしてあげるよ?
130(1): デフォルトの名無しさん [sage] 2019/08/19(月) 09:33:40.73 ID:W8+ngSHm(1) AAS
>>127なんのためにPOSIXが出来て、みんなそれに対応してると思ってるの?
240(1): デフォルトの名無しさん [sage] 2019/08/21(水) 13:41:29.73 ID:dVKYqL0H(2/5) AAS
あぁ昨日のsortが安定の神様かw
561: デフォルトの名無しさん [sage] 2019/09/03(火) 00:13:50.73 ID:1Annr1ic(1/2) AAS
>>560560(1): デフォルトの名無しさん [sage] 2019/09/03(火) 00:05:50.68 ID:zMaEK75z(1) AAS
ほぅ…
$ bash -c 'unset a b;echo 10| { read a;let b=a+10;echo $b; }'
20
へーそんな挙動するのか。
569: デフォルトの名無しさん [sage] 2019/09/03(火) 17:49:01.73 ID:U7UFDLpo(1) AAS
>>566,567566(2): デフォルトの名無しさん [sage] 2019/09/03(火) 02:44:16.76 ID:KovswbEV(3/3) AAS
>>564
POSIXシェルという実装は存在しない
だからkshの動きはPOSIXシェルの仕様通りと言える
bashはPOSIXシェルそのものではない。
のこと?>>567の下は上と同じこと言っているとしか見えないが
だったらマジじゃないだろう
764(1): デフォルトの名無しさん [sage] 2019/10/02(水) 03:43:25.73 ID:DWeKr+Az(6/8) AAS
同じだだろ。何いってんの?
略だから違うんだって言いたいの?
837: デフォルトの名無しさん [sage] 2019/10/04(金) 14:43:52.73 ID:M3k51a5A(1) AAS
必要ならインストールすれば良いだけだ
873: デフォルトの名無しさん [sage] 2019/10/08(火) 16:39:54.73 ID:9VgyN7XE(1) AAS
「Perlの方が楽に書ける」なんていうのは個人の嗜好に依存してて,ほとんど無根拠に近い。
もしPerlの「素晴しさ」とやらを報しめたいのなら,もっと客観的な事実――導入率・実績云々――を提示したほうがいいよ。
尤も,俺に言わせればAWKのほうが〜Perlのほうが〜なんていう議論とも呼べない喧嘩それ自体くだらねぇけどな
903: デフォルトの名無しさん [sage] 2019/10/17(木) 17:19:49.73 ID:z1/RyPhF(5/10) AAS
>>899899(2): デフォルトの名無しさん [sage] 2019/10/17(木) 17:10:16.84 ID:e7ZwLQTq(2/2) AAS
普通のプログラミング言語と違って
シェルスクリプトはブーリアンの分岐は可能なら
if else 使うよりも && || が見やすく良いと思う
それだめ。 shellcheck使ってみ、エラーになる。
shellcheck において && || みたいな三項演算子風な使い方は
func && VALUE=ok || VALUE=ng
という書き方(変数代入)のみ認められる。
func && foo || bar
は認められない。
なぜかと言うと、
1. func が 正常終了して
2. foo が 異常終了すると
3. bar が 実行されるから
変数代入に限れば必ずVALUE=okは正常終了するから、
この書き方に限って許されてる。
だから、一応fooが必ず正常終了するものであれば、使えなくはないけど
静的解析ではそれを知ることが不可能なので、shellcheckはエラーになる。
あともう一つ、barが異常終了したとき、&& || だと $?はエラーになるが、
ifで書けばfi終了後、$? は正常終了になってるという違いもある。
だからset -eでの挙動が変わる。
960: デフォルトの名無しさん [sage] 2019/10/24(木) 22:00:36.73 ID:mthfJT/n(3/3) AAS
>>958958(1): デフォルトの名無しさん [sage] 2019/10/24(木) 18:07:25.18 ID:lp1ZwQII(1) AAS
>>956
サブシェルは関係ない。俺もちゃんと仕様読んだわけじゃないけど、
aliasは実行時じゃなくて、1単位ごとに → パース → 実行 の
パース時に変換してる感じ
そして1単位というのは、
alias FLAG=true
alias FLAG=false; FLAG && echo true
↑これは一行で一単位、だからtrueと表示されてしまうし
関数とか、プロンプトから、func() { 改行 とかやると
} 改行 するまで、ずっと行頭に > って表示されるだろ?
あれが1単位。だから↓みたいなものもtrueって表示されてしまうんだよ
alias FLAG=true
func() {
alias FLAG=false
if FLAG; then
echo true
fi
}
func
あー。
aliasってたしか一つの構文解析のかなり初期段階で展開される筈だから,
その一つの解析対象の内部で定義されているaliasは(当然)それ自身の解析結果には反映されんな。
このへんだろうか??
外部リンク[html]:pubs.opengroup.org
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.039s