Bash で文字列の長さを取得する
- 文字列の長さと基本表記
-
#
演算子を使用して Bash で文字列の長さを計算する -
expr
コマンドを使用して Bash で文字列の長さを計算する -
awk
コマンドを使用して Bash で文字列の長さを計算する -
wc
コマンドを使用して Bash で文字列の長さを計算する - ファイルの文字長を計算する
プログラミング言語では、データ型の長さやサイズが重要な役割を果たします。 リストのトラバーサルに役立ち、有用な情報の抽出を容易にします。
文字列全体をトラバースする必要があるタスクを実行するには、長さが特に重要です。 したがって、データ型の長さまたはサイズの重要性を考慮して、文字列の長さを計算するさまざまな方法を学習します。
文字列の長さと基本表記
文字列は異なる char
のシーケンスであり、スペースを含む場合があります。 Bash では、文字列の長さはその文字列の合計文字数です。
たとえば、"Hello World"
文字列には、10 個の char
と 1つのスペースが含まれています。 したがって、その長さは 11 です。
ほとんどのスクリプトおよびプログラミング言語には、文字列の長さを検出するための組み込み関数またはライブラリ関数があります。 同様に、Bash コマンドを操作して Bash で文字列の長さを計算する方法は多数あります。
#
演算子を使用して Bash で文字列の長さを計算する
#
演算子を使用して、文字列の長さを計算できます。 次のコードは、#
演算子を使用して文字列の長さを取得する構文を示しています。
${#your_var}
まず、文字列を含む変数を中括弧で囲み、#
演算子の前に変数を置きました。
#
演算子は、文字列の長さを出力する際に重要な役割を果たします。 #
が使用されていない場合、コードは文字列全体を出力するため、変数に追加することが不可欠です。
さらに、外側の $
記号は文字列の長さを変数として扱い、echo
コマンドを使用して画面に表示します。 次のコードは、#
を使用した文字列の長さの計算を示しています。
var="hello world"
echo ${var}
echo ${#var}
1 行目で、var
という名前の変数を作成します。 var
変数には、端末またはファイル文字列からの任意の文字列を含めることができます。
2 行目は、$
と中かっこを使用して文字列全体を出力します。 最後の行では、変数とともに #
記号を使用し、コマンド コンソールに表示される文字列の長さを取得しました。
expr
コマンドを使用して Bash で文字列の長さを計算する
ここでは、expr
コマンドを使用して文字列の長さを計算する方法について説明します。 次のコードは、expr
コマンドを使用するための基本的な構文を示しています。
`expr "$var1" : "$var2"`
expr
コマンドは、比較演算子 :
の前後に 2つのパラメーターを取ります。 比較演算子は、共通の文字について 2つの文字列を比較し、類似した chars
の数を返します。
var1
では、長さを計算する必要がある文字列を指定します。 var2
には文字列を 1つずつ解析する正規表現が含まれており、比較演算子は同様の各 char
の数を計算できます。
次のコードは例を示しています。
var="hello world"
echo `expr "$var" : ".*"`
上記のコードでは、文字列 "hello world"
を変数 var
に代入しました。 .*
は、前のトークン (つまり、var
の値) のすべての文字を解析します。
したがって、2つの同じオペランドがある場合、比較演算子は最初のオペランドで chars
の合計数を返します。
awk
コマンドを使用して Bash で文字列の長さを計算する
awk
コマンドを使用して文字列の長さを計算してみましょう。 awk
コマンドは、データ操作とレポート生成に使用されるスクリプト言語です。
次のコードは、awk
コマンドを使用した文字列の長さの計算を示しています。
var="hello world"
n1=`echo $var |awk '{print length}'`
echo $n1
上記のコードでは、awk
と print
コマンドの組み込み属性を使用しています。
awk
コマンドは、パイプを使用して var
変数から文字列の入力を取得します。 パイプは、コマンド出力をパイプの後の入力に送信します。
行 #3 は、確認として文字列の長さを出力します。
wc
コマンドを使用して Bash で文字列の長さを計算する
次に、wc
コマンドを使用して文字列の長さを計算します。 -c
または -m
フラグを付けたパイプを使用して文字列を wc
に渡すだけで、必要な出力 (つまり、文字列の長さ) が得られます。
次の Bash コマンドは、wc
コマンドを使用して文字列の長さを表示します。
echo -n "$var" | wc -c
または:
echo -n "$var" | wc -m
上記のコードは、wc
コマンドの 2つの異なるフラグを使用した文字列の長さの計算を示しています。
wc
コマンドのみを使用すると、文字列の長さよりも多くの情報が得られますが、これは必要ありません。 そのため、wc
コマンドの後にフラグを指定することは避けられません。
-c
または -m
の両方のフラグを使用できます。 どちらも同じ出力を返します。
次のスニペットは、上記の wc
コードの出力を示しています。
ファイルの文字長を計算する
次に、ファイルから文字列の長さを計算する方法について説明します。 abc.txt
という名前のファイルを作成し、テキストを書き込みます。
次に、ファイルから文字列の長さを読み取って出力します。
次のコードは、ファイルからの文字列の長さの計算を示しています。
touch abc.txt
echo "hello world">> abc.txt
cat abc.txt | wc -c
touch
は新しいファイル abc.txt
を作成し、単純な I/O リダイレクションを使用して hello world
文字列を書き込みます。 3 行目の cat
コマンドは、abc.txt
の内容を表示します。
ただし、パイプ |
cat
コマンドの出力を wc
コマンドに入力します。 したがって、wc
はこの出力の単語をカウントします。