Bashは$ 1の値を割り当てます。

Bashは$ 1の値を割り当てます。
#!/usr/bin/bash
kill9="9"
kill15="15"

if [ $1 == $kill9  ]; then
   set -- "$1" "$kill9"
else
   set -- "$1" "$kill15"
fi

echo $1

-9 を入力すると $1 が 9 になり、-15 を入力すると $1 が 15 になります。上記のスクリプトは間違っています。

どうすればいいですか?

ベストアンサー1

#!/usr/bin/bash
kill9="9"
kill15="15"

if [ "$1" = "-$kill9"  ]; then
  set -- "$kill9"
else
  set -- "$kill15"
fi

printf '%s\n' "$1"

おすすめ記事