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

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 までご連絡ください。
倉庫:フラットパックアプリを楽に処理するためのGUI倉庫:フラットパックアプリを楽に処理するためのGUIMay 09, 2025 am 11:30 AM

楽なフラットパック管理のためのGUI:倉庫の紹介 フラットパックアプリケーションの成長コレクションを管理することは、コマンドラインのみを使用して面倒です。 フラットパックを合理化するように設計されたユーザーフレンドリーなグラフィカルインターフェイスであるウェアハウスを入力してください

ハードドライブボトルネックを識別する8つの強力なLinuxコマンドハードドライブボトルネックを識別する8つの強力なLinuxコマンドMay 09, 2025 am 11:03 AM

この記事では、Linuxシステムでハードドライブボトルネックを特定して解決するための包括的なガイドを提供します。 経験豊富なサーバー管理者は、これが特に便利だと感じるでしょう。遅いディスク操作は、アプリケーションのパフォーマンスに深刻な影響を与える可能性があります。

Linuxユーザー向けの4つのベストQRコードジェネレーターLinuxユーザー向けの4つのベストQRコードジェネレーターMay 09, 2025 am 10:27 AM

Linuxシステムの下での効率的なQRコード生成ツール 今日のデジタルの世界では、QRコードは情報を迅速かつ便利に共有し、URL、テキスト、連絡先、Wi-Fi資格情報、さらには支払い情報からのデータアクセスを簡素化する方法になりました。 Linuxユーザーは、さまざまなツールを使用して、QRコードを効率的に作成できます。 Linuxシステムで直接使用できる人気のあるQRコードジェネレーターを見てみましょう。 QRENCODE QRENCODEは、LinuxでQRコードを生成するための軽量コマンドラインツールです。それはそのシンプルさと効率性に好評であり、直接的な方法を好むLinuxユーザーに人気があります。 QRENCODEを使用して、URLを使用できます。

小学校OS 8:MacOSおよびWindows用のユーザーフレンドリーなLinux小学校OS 8:MacOSおよびWindows用のユーザーフレンドリーなLinuxMay 09, 2025 am 10:19 AM

小学校OS 8 Circe:滑らかでスタイリッシュなLinux体験 UbuntuベースのLinux分布であるElementary OSは、シンプルなテーマパックから本格的な独立したオペレーティングシステムに進化しました。 ユーザーフレンドリーなインターフェイスであるエレガントなdeで知られています

すべての機械学習エンジニアの40 Linuxコマンドすべての機械学習エンジニアの40 LinuxコマンドMay 09, 2025 am 10:06 AM

Mastering Linuxは、あらゆる機械学習(ML)エンジニアにとって重要です。 そのコマンドラインインターフェイスは、比類のない柔軟性と制御、ワークフローの合理化、生産性の向上を提供します。この記事では、Essential Linuxコマンドの概要を説明しています

Arch Linuxチートシート:初心者向けの重要なコマンドArch Linuxチートシート:初心者向けの重要なコマンドMay 09, 2025 am 09:54 AM

Arch Linux:初心者のコマンドラインチートシート Arch Linuxは比類のないコントロールを提供しますが、新人には気が遠くなると感じることがあります。このチートシートは、システムを自信を持って管理するための重要なコマンドを提供します。 システム情報と更新 これらのcom

Linuxで機械学習用のScikit-Learnをインストールする方法Linuxで機械学習用のScikit-Learnをインストールする方法May 09, 2025 am 09:53 AM

このガイドは、Linux SystemsにScikit-Learn Machine Learning Libraryをインストールして使用する包括的なウォークスルーを提供します。 Scikit-Learn(Sklearn)は、さまざまなマシンL用の幅広いツールを提供する強力でオープンソースのPythonライブラリであり、

UbuntuにKali Linuxツールをインストールする方法UbuntuにKali Linuxツールをインストールする方法May 09, 2025 am 09:46 AM

このガイドは、Kali LinuxツールにアクセスするためにDockerを活用する方法を説明します。これは、Katoolinのような時代遅れの方法に代わるより安全で効率的な代替品です。 Katoolinはもはや積極的に維持されておらず、最新のシステムで互換性の問題を引き起こす可能性があります。する

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい