[過去ログ] シェルスクリプト総合 その31 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
956
(1): デフォルトの名無しさん [sage] 2019/10/24(木) 17:48:17.61 ID:mthfJT/n(1/3) AAS
>>953
953(1): デフォルトの名無しさん [sage] 2019/10/22(火) 21:23:51.15 ID:CciDAIxr(1) AAS
>>952
面白いけど、サブシェルの中で変えられないから

alias FLAG=true
(
alias FLAG=false
if FLAG; then
echo true
fi
)

出力
true
知らんかった。恥ずかしいw
958
(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
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 1.556s*