zsh その7 (749レス)
前次1-
抽出解除 レス栞

9: 名無しさん@お腹いっぱい。 [sage] 2012/06/09(土) 22:54:47.90 AAS
入力行に色をつけるこってできる?
179
(1): 名無しさん@お腹いっぱい。 [sage] 2013/04/27(土) 09:18:26.90 AAS
a=(-l -a)
373
(1): 名無しさん@お腹いっぱい。 [sage] 2014/10/11(土) 06:37:55.90 AAS
数値演算用の関数として

function calc()
{
echo $(( $* ))
}

というのを作って使ってるんですが、 ( ) が入れ込んでたりすると zsh: bad pattern: と出てしまいます
引数全体を""で括ればいい話なんですが、そういうことやらずに引数の文字列をそのまま関数に渡すことってできないでしょうか?
530
(1): 名無しさん@お腹いっぱい。 [sage] 2018/04/22(日) 17:49:31.90 AAS
ここでも出てるんだが、
外部リンク:stackoverflow.com
git commit 'Add f<TAB>
としたときfで始まるファイル名を補完してくれたらいいんだが
590: 名無しさん@お腹いっぱい。 [sage] 2018/11/24(土) 17:01:24.90 AAS
printfで0.999999999999999になったとき
どう表示されるのだろうか
599
(1): 名無しさん@お腹いっぱい。 [sage] 2019/03/30(土) 02:31:35.90 AAS
(( a = 0 )) と (( a = それ以外の数値 )) の終了ステータス $? が
それぞれ1と0なんどけど仕様?(( a = 0.0 )) とかにしても1。
変数に設定された値自体が終了ステータスに影響するっておかしくない?

エラーがあると困るシェルスクリプトでは最初に set -e するようにしてるんだが
これじゃ (( )) で数値演算したいときに超困る
600
(1): 名無しさん@お腹いっぱい。 [sage] 2019/03/30(土) 09:43:53.90 AAS
>>599
ちょっと調べてみた
まずbashでhelp letを見てみると

Exit Status:
If the last ARG evaluates to 0, let returns 1; let returns 0 otherwise.

とあるので((...))は中身が0に評価されたときのみ1を返す
じゃあa=0とa=1(これはassignment)がどんな値に評価されるのか?だけど
POSIXを見ると$((...))の中身はCのルールに従って評価されると書いてある
((...))もPOSIXには無いけど同じルールに従うはず
外部リンク[html]:pubs.opengroup.org

で、Cだとassignmentはassignされた値を返すので
((a=0))は0、((a=1))は1を返すということになる
一言で言うと(( ... ))の中はCのルールが適用されるからということかな
set -eの回避策は((a=0, ..., a>100
100(2): 名無しさん@お腹いっぱい。 [sage] 2012/12/28(金) 18:21:41.94 AAS
>>98
>>99以外だと${=x} を使ってもおk
))とか、: $((a=0))とか、if文の中に押し込むとか色々ある
640
(1): 名無しさん@お腹いっぱい。 [sage] 2019/08/04(日) 08:14:57.90 AAS
外部リンク:qiita.com

~/.zshrc を実行するつもりがタブ補完などをスリップしてしまい .zsh_history を実行していまう。
するとヒストリファイル($HISTFILE == .zsh_history)に書かれた過去に実行したコマンドが、順番に source コマンドによって読み込まれて実行される。
記事で紹介されている事故では途中で止められる機会があったから良いものの、運が悪ければ不可逆的・破壊的コマンドが走り重要な情報を含んでるかもしれない現環境がズタズタになる。
702
(1): 名無しさん@お腹いっぱい。 [sage] 2020/07/07(火) 22:09:19.90 AAS
>>700
700(1): 名無しさん@お腹いっぱい。 [sage] 2020/07/07(火) 15:42:07.86 AAS
ksh にすればいいのに()
kshはメンテも終わった終わったシェルだから
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 1.028s*