bashコマンドの使い方の詳細な説明

bashコマンドの使い方の詳細な説明

Linux では、基本的に vi エディタのように「.sh」拡張子を持つテキストの処理と実行を記述する bash が標準として採用されています。

プログラミングと同様に、変数や関数、演算処理などの機能が多く備わっているので、ちょっとしたプログラムを作るのであればbashで書くこともできます。

また、bash はシェルによって実行されるため、シェル スクリプトとも呼ばれます。

シェルスクリプトを作成する

まず、コンソールに「Hello World!!」と出力する簡単なスクリプトを作成します。

vi コマンドを使用して新しいファイルを作成します。

$ vi hello.sh

エディタが開いたら以下のように記述します。

#!/usr/bin/bash
「Hello World!!」をエコーし​​ます。
終了 0

最初の行の「#!/usr/bin/bash」は、bash を使用したシェル スクリプトであることを示します。

2 行目は実行されるステートメントを記述します。

最後に、「exit 0」を使用して bash を終了します。パラメータ 0 は正常終了を示します。

ファイルを作成したら、bash コマンドを使用してシェル スクリプトを実行します。

$ bash hello.sh

実行結果:

こんにちは世界!!

Hello World!!が出力される

また、シェルスクリプトを実行する際には、bash 以外にも実行権限を変更して「./」で実行するコマンドもあります。

$ chmod 755 hello.sh
$ ./hello.sh

sh コマンドを使用して実行する方法があります。

$ sh hello.sh

シェル スクリプトはプログラミングだけでなくコメントにも使用できます。

「#」の後にコメントを書くことができます。

#!/usr/bin/bash
「Hello World!!」をエコーし​​ます。
#処理を終了します。
終了 0

シェル スクリプトでは変数を定義し、値を割り当てることができます。

#!/usr/bin/bash
 
数値=100
円周率=3.14
STR1="こんにちは"
str_2="世界!!"
 
${num}をエコーする
${PI} をエコーする
${STR1}をエコーする
${str_2}をエコーする
 
終了 0

変数には、大文字、小文字、数字、アンダースコア (_) などの英数字を使用できます。

変数に値を割り当てる場合は、「変数 = 値」と記述します。

「=」の前後にスペースを入れるとエラーが発生するので注意してください。

また、変数にアクセスする場合は、「${variable}」のように変数名の前に「$」を付け、変数を「{}」で囲む必要があります。

入出力

#!/usr/bin/bash
 
AGEを読む
エコー「ege=$AGE」
 
終了 0

実行結果:

30
30度

read は、コンソールから入力されたコンテンツをパラメータで指定された変数に保存します。

read で指定された変数は通常の変数と呼ぶことができます。

以下もご興味があるかもしれません:
  • Bashスクリプトを使用すると、シェルにログインするたびにLinuxシステム情報を表示できます。
  • Python3でLinux Bashコマンドを実行する方法
  • bash スクリプトで ssh/scp コマンドにパスワードを渡す方法の詳細な説明
  • Bash スクリプトでの配列メソッドの作成と使用の概要
  • Bash の山括弧の深い理解 (初心者向け)
  • シェルコマンドを実行するJavaコードの実装
  • コマンドラインを呼び出して実行結果を取得する Java の簡単な実装例
  • Javaでシェルコマンドを呼び出して実行結果を取得する例
  • Java による bash コマンド プロセス解析の実装

<<:  MySQL 5.7.15 のインストールと設定方法のグラフィック チュートリアル (Windows)

>>:  Apple 電卓の JS 実装

推薦する

nginx高可用性クラスタの実装プロセス

この記事は主に、nginx 高可用性クラスタの実装プロセスを紹介します。この記事のサンプルコードは非...

Jenkinsを使用してプロジェクトを別のホストにデプロイするプロセス

環境ホスト名IPアドレス仕えるジェンキンス192.168.216.200トムキャット、ジェンキンスサ...

Dockerプライベートウェアハウスレジストリの導入

使用される Docker イメージが増えるにつれて、イメージを保存する場所、つまりウェアハウスが必要...

MySQL の 3 つの浮動小数点型 (float、double、decimal) の違いと概要について簡単に説明します。

各浮動小数点型のストレージ サイズと範囲は、次の表に示されています。タイプサイズ範囲(符号付き)範囲...

純粋な CSS で「テキストオーバーフローの切り捨てと省略」を実装するいくつかの方法

私たちの日常的な開発作業では、テキストのオーバーフロー、切り捨て、省略は、考慮する必要がある非常に一...

Docker を使用して nginx で tomcat クラスターを構築する方法 (画像とテキスト付き)

まず、Tomcatフォルダを作成します。Dockerの設定を容易にするために、ルートディレクトリに直...

CSS3 のテキストとフォントの新しい設定

テキストシャドウテキストシャドウ: 水平オフセット 垂直オフセット ぼかし色互換性: IE10+ &...

同じページを動的にロードするための Vue ルーティングリスニングの例

目次シナリオ分析発達要約するシナリオ分析システムでは、1 つのモジュールに 3 つのサブモジュールが...

CSS3 カテゴリメニュー効果

CSS3 カテゴリ メニューの効果は次のとおりです。 html <html> <ヘ...

MySQL シリーズ II マルチインスタンス構成

チュートリアルシリーズMySQL シリーズ: MySQL リレーショナル データベースの基本概念My...

JavaScript 事前分析、オブジェクトの詳細

目次1. 事前分析1. 変数の事前解析と関数の事前解析1. 変数の事前解析2. 機能事前分析2. 事...

CSSはフロートをシミュレートして、画像の左右を囲む中央テキストの効果を実現します。

画像の周囲にテキストを折り返すとは何ですか?これは次の図の効果です。 エフェクトのCSSコードはここ...

Linux環境にJDK1.8をインストールする

目次1. インストール環境2. インストール手順ステップ1: インストールパッケージをダウンロードす...

CSSの省略記号とパディングを組み合わせた場合の問題の詳細な説明

CSS によるテキストの切り捨てテキストを自動的に切り捨てるスタイル コードを実装するには、次のコー...

vue3 のコンポーネントの互換性のない変更の詳細な説明

目次機能コンポーネント非同期コンポーネントの書き方とdefineAsyncComponentメソッド...