Loose-Info.com
Last Update 2022/06/06
TOP - 各種テスト - bash - 変数

変数
名前で示されるパラメータ

テスト概要

その1
変数への値の代入と格納値の確認

その2
先頭が0である数値を格納した変数


その1

変数への値の代入と格納値の確認

挙動確認用スクリプトファイル

sample.sh
#!/bin/bash #引用符無しで数値を変数に代入 v1=123 #引用符付きで数値を変数に代入 v2="123" #引用符無しで文字列を変数に代入 v3=abcde #引用符付きで文字列を変数に代入 v4="abcde" #変数に「空」の値を代入 v5= #格納値一覧表示 echo "$v1" "$v2" "$v3" "$v4" "\"$v5\"" #数値を格納したv1とv2の比較 if [[ "$v1" == "$v2" ]]; then echo "v1 == v2" fi #数値を格納したv1と数値の比較 if [[ "$v2" -eq 123 ]]; then echo "v2 -eq 123" fi #文字列を格納したv3とv4の比較 if [[ "$v3" == "$v4" ]]; then echo "v3 == v4" fi #文字列を格納したv3とv4の比較 if [[ "$v4" == "abcde" ]]; then echo "v4 == \"abcde\"" fi #「空」の値をを格納したv5と0の比較 if [[ "$v5" -eq 0 ]]; then echo "v5 -eq 0" fi #「空」の値をを格納したv5と""(空文字列)の比較 if [[ "$v5" == "" ]]; then echo "v5 == \"\"" fi #「空」の値をを格納したv5の文字列長が0であることを確認 if [[ -z "$v5" ]]; then echo "v5は長さ0" fi

$ ./sample.sh 123 123 abcde abcde "" v1 == v2 <--- 数値代入時の引用符有無に関する比較 v2 -eq 123 <--- 格納値が数字の変数と数値との比較 v3 == v4 <--- 文字列代入時の引用符有無に関する比較 v4 == "abcde" <--- 格納値が文字列の変数と文字定数との比較 v5 -eq 0 <--- 「空」の値をを格納した変数と0の比較 v5 == "" <--- 「空」の値をを格納したv5と""(空文字列)の比較 v5は長さ0 <--- 「空」の値をを格納したv5の文字列長が0であることを確認 $

その2

先頭が0である数値を格納した変数

sample.sh
#!/bin/bash #先頭が0で始まる数値を代入 v1=012 #先頭が複数の0で始まる数値を代入 v2=000012 echo $v1 $v2 #v1と8進数の比較 if [[ "$v1" -eq 10 ]]; then echo "v1 -eq 10" fi #v2と余分な0を削除した数値との比較 if [[ "$v2" -eq 012 ]]; then echo "v2 -eq 012" fi

$ ./sample.sh 012 000012 <--- 格納値は代入文字列のまま v1 -eq 10 v2 -eq 012 $ 先頭に0がある数値は8進数として処理される

実行環境

GNU bash, version 5.1.16


コード例・出力内容中の表記

・実行例中の太字表記部分は、コマンドなどの入力された文字列を示します。
・「」や「...」の着色省略表記は、 実際のソースコードや出力内容などを省略加工した部分を示します。