ホームページ >システムチュートリアル >Linux >Bash Scriptingで2つの変数を分割する方法

Bash Scriptingで2つの変数を分割する方法

William Shakespeare
William Shakespeareオリジナル
2025-03-07 11:20:12430ブラウズ

How to Divide Two Variables in Bash Scripting

バッシュスクリプトでの分割操作:整数と浮動小数点数を効率的に処理する

BASHスクリプトは、LinuxおよびUnixのようなシステムでタスクを自動化するための強力なツールです。ファイルとプロセスの操作で知られていますが、部門などの算術操作も多くのスクリプトで重要な役割を果たします。 2つの変数で正しく分割する方法を理解することは、リソースの割り当て、データ処理などに役立ちます。この記事では、Bashのパフォーマンス部門の微妙さを調査し、算術操作をスムーズかつ効率的に実行するための知識を提供します。

基本コンセプト

bashの変数

bashの変数は、スクリプトの実行中に変更できるデータに割り当てられた名前です。数値、文字列、またはファイル名を保存するために変数を使用することがよくあり、これらのデータはさまざまな操作を実行するために操作できます。

算術操作の概要

bashは、基本的な算術操作を直接または外部ユーティリティを通じてサポートします。これらの操作には、追加、減算、乗算、および分割が含まれます。ただし、Bash自体は整数算術を実行します。つまり、他のツールを使用しない限り、小数なしでのみ整数を処理できます。

算術コマンドの紹介

bashで算術操作を実行する2つの主要な方法があります:

    expr:
  • 算術計算を含む式を評価する外部ユーティリティ。
  • 算術的拡張$(()):
  • スクリプトでの直接算術操作を可能にするbashの関数。
スクリプトの設定

bashスクリプトファイルを作成

スクリプトの書き込みを開始するには、NanoやVIMなどのテキストエディターを使用して.sh拡張機能を使用してファイルを作成します。たとえば、

nano myscript.sh

スクリプトを実行可能にします

スクリプトを作成した後、chmodコマンドを使用して実行可能にする必要があります:

chmod x myscript.sh

基本的な構文

バッシュスクリプトは通常、シェバン(#!)から始まり、その後にバッシュインタープレーターへのパスが続きます。

#!/bin/bash # 你的脚本从这里开始変数を宣言します

割り当て

bashの変数に値を宣言して割り当てるには、次の構文を使用します。

これらの変数は、算術操作で使用できるようになりました。

var1=10 var2=5

division

を実行します

使用するにはexprexprコマンドを使用してください:

これは、var1の結果をvar2で割った出力です。 result=$(expr $var1 / $var2) echo "结果是 $result"

トレーニング整数部門

exprは整数算術のみをサポートするため、分割できない2つの整数を分割すると、分数部分が切り捨てられます。

算術的拡張機能$(())

算術拡張機能を使用すると、より単純な構文と直接スクリプト統合が可能になります:

この方法はより単純で、外部プロセスを生成しないため、EXPRよりも高速です。

非整数の結果の処理

フローティングポイント除算の課題

bash自体は、非統合値につながる分割を複雑にするフローティングポイント算術をサポートしていません。 フローティングポイント除算のソリューション

フローティングポイント分割を処理するには、BCツールを使用できます。

result=$(echo "$var1 / $var2" | bc -l)このコマンドは、分割操作をBCに送信します。BCは、浮動小数点算術を処理し、結果を返します。 echo "结果是 $result"

一般的なトラップとエラー

ゼロ

で割ってゼロで分割しようとすると、スクリプトエラーが発生します。部門を実行する前に、分母がゼロかどうかを確認してください:

if [ $var2 -eq 0 ]; then echo "错误:被零除。" elseresult=$(($var1 / $var2)) echo "结果是 $result"fi非デジタル入力の処理

ランタイムエラーを回避するための入力がデジタルであることを確認してください:

if ! [[ "$var1" =~ ^[0-9] $ ]] || ! [[ "$var2" =~ ^[0-9] $ ]]; then echo "错误:非数字输入。" elseresult=$(($var1 / $var2)) echo "结果是 $result"fi実用的な例

インタラクティブスクリプトはユーザー入力に使用されます

ユーザー入力を受け入れ、分割を実行するスクリプトを作成します:

#!/bin/bash echo "输入两个数字:" read var1 var2 if [[ "$var2" -eq 0 ]]; then echo "不能被零除。" elseresult=$(echo "$var1 / $var2" | bc -l) echo "除法结果:$result"fi結論

この記事では、整数操作から浮動小数点数の処理まで、BASHスクリプトで部門を実行する重要なポイントを紹介します。これらの原則を理解することにより、スクリプトの機能を強化し、複雑な計算を簡単に実行できます。これらのテクニックを使用して、スクリプトスキルを向上させ、より高度な問題を解決してみてください。

以上がBash Scriptingで2つの変数を分割する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。