shellスクリプト-文字列配列
12900 ワード
文字列
文字列は、一重引用符でも二重引用符でも引用符でも使用できます.一重引用符の違いはPHPと似ています.
一重引用符
一重引用符文字列の制限:
単一引用符の任意の文字はそのまま出力され、単一引用符文字列の変数は無効です.
一重引用符文字列には一重引用符は表示されません(一重引用符にエスケープ記号を使用してもだめです).
二重引用符
二重引用符の利点:
二重引用符には変数があります.
二重引用符には、エスケープ文字が表示されます.
つづり文字列
文字列の長さの取得
サブストリングの抽出
次の例では、文字列2文字目から4文字を切り取ります.
サブストリングの検索
文字iまたはsの場所を検索します.
注意:以上のスクリプトの「`」は逆引用符で、単引用符「'」ではなく、見間違えないでください.
シェル配列
bashは1次元配列(多次元配列はサポートされていません)をサポートし、配列のサイズを限定しません.
C言語と同様に、配列要素の下付き文字は0から番号付けされます.配列内の要素を取得するには、下付き文字を使用します.下付き文字は整数または算術式で、0以上の値を指定します.
配列の定義
Shellでは配列を括弧で表し,配列要素は「スペース」記号で分割する.配列を定義する一般的な形式は、次のとおりです.
例:
または
配列の個々のコンポーネントを個別に定義することもできます.
連続する下付き文字を使用しなくてもよく、下付き文字の範囲に制限はありません.
配列の読み込み
配列要素の値を読み込む一般的なフォーマットは、次のとおりです.
例:
@記号を使用して、配列内のすべての要素を取得します.たとえば、次のようにします.
配列の長さの取得
配列の長さを取得する方法は、文字列の長さを取得する方法と同じです.たとえば、次のようにします.
参照リンク:http://www.runoob.com/linux/linux-shell-variable.html
文字列は、一重引用符でも二重引用符でも引用符でも使用できます.一重引用符の違いはPHPと似ています.
一重引用符
str='this is a string'
一重引用符文字列の制限:
単一引用符の任意の文字はそのまま出力され、単一引用符文字列の変数は無効です.
一重引用符文字列には一重引用符は表示されません(一重引用符にエスケープ記号を使用してもだめです).
二重引用符
your_name='qinjx'
str="Hello, I know you are \"$your_name\"!
"
二重引用符の利点:
二重引用符には変数があります.
二重引用符には、エスケープ文字が表示されます.
つづり文字列
your_name="qinjx"
greeting="hello, "$your_name" !"
greeting_1="hello, ${your_name} !"
echo $greeting $greeting_1
文字列の長さの取得
string="abcd"
echo ${#string} # 4
サブストリングの抽出
次の例では、文字列2文字目から4文字を切り取ります.
string="runoob is a great site"
echo ${string:1:4} # unoo
サブストリングの検索
文字iまたはsの場所を検索します.
string="runoob is a great company"
echo `expr index "$string" is` # 8
注意:以上のスクリプトの「`」は逆引用符で、単引用符「'」ではなく、見間違えないでください.
シェル配列
bashは1次元配列(多次元配列はサポートされていません)をサポートし、配列のサイズを限定しません.
C言語と同様に、配列要素の下付き文字は0から番号付けされます.配列内の要素を取得するには、下付き文字を使用します.下付き文字は整数または算術式で、0以上の値を指定します.
配列の定義
Shellでは配列を括弧で表し,配列要素は「スペース」記号で分割する.配列を定義する一般的な形式は、次のとおりです.
=( 1 2 ... n)
例:
array_name=(value0 value1 value2 value3)
または
array_name=(
value0
value1
value2
value3
)
配列の個々のコンポーネントを個別に定義することもできます.
array_name[0]=value0
array_name[1]=value1
array_name[n]=valuen
連続する下付き文字を使用しなくてもよく、下付き文字の範囲に制限はありません.
配列の読み込み
配列要素の値を読み込む一般的なフォーマットは、次のとおりです.
${ [ ]}
例:
valuen=${array_name[n]}
@記号を使用して、配列内のすべての要素を取得します.たとえば、次のようにします.
echo ${array_name[@]}
配列の長さの取得
配列の長さを取得する方法は、文字列の長さを取得する方法と同じです.たとえば、次のようにします.
#
length=${#array_name[@]}
#
length=${#array_name[*]}
#
lengthn=${#array_name[n]}
参照リンク:http://www.runoob.com/linux/linux-shell-variable.html