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 実装

推薦する

ネイティブJavaScriptでカルーセルを実装する

この記事では、JavaScriptでカルーセルを実装するための具体的なコードを参考までに紹介します。...

Linux の crontab タスク スケジューリングの簡単な分析

1. スケジュールタスクを作成する命令crontab -eは現在のユーザーの編集インターフェースに入...

JavaScript デザインパターン 責任連鎖パターン

目次概要コードの実装パラメータ定義成し遂げる責任連鎖パターンの実装改善概要責任チェーン パターンは、...

MySQLスローログに関する知識のまとめ

目次1. スローログの紹介2. スローログの練習1. スローログの紹介スロー ログの正式名称はスロー...

MySQL の複数テーブル関連付け 1 対多クエリを使用して最新のデータを取得する方法の例

この記事では、MySQL で複数のテーブルを使用して 1 対多のクエリを使用して最新のデータを取得す...

Win10にnginxをインストールする方法

会社から、負荷を実装するためにnginxをベースにFordプロジェクトのWebServiceサーバー...

Vue 開発ガイドの重要な知識の要約

目次概要0. JavaScriptとWeb開発の基礎1. Vueの基本概念Vue コア機能コンポーネ...

MySQL データをエクスポートする際の secure-file-priv 問題の解決方法

エラー 1290 (HY000) : MySQL サーバーは –secure-file-priv オ...

Nginx でアクセス頻度、ダウンロード速度、同時接続数を制限する方法

1. アクセス頻度、同時接続、ダウンロード速度を制限するために使用されるモジュールと命令の概要ngx...

MySQL で戻り値ありと戻り値なしのストアド プロシージャを書く 2 つの方法

プロセス1: 戻り値あり: proc_addNum が存在する場合はプロシージャを削除します。 プロ...

MySql インデックス使用戦略の分析

MySql インデックスインデックスの利点1. 一意のインデックスまたは主キー インデックスを作成す...

ダッシュボードを実装するためのjQueryプラグイン

jQueryプラグインは、参考のためにダッシュボードを実装します。具体的な内容は次のとおりです。一般...

Svelte の Defer Transition を Vue で実装する方法

最近、Rich Harris の <Rethinking Reactivity> ビデオ...

1 つの記事で Vuex を理解する

目次概要Vuex の 4 つの主要オブジェクト状態の使用突然変異の使用ゲッターの使用アクションの使用...

React+tsは二次リンク効果を実現します

この記事では、二次リンク効果を実現するためのReact+tsの具体的なコードを参考までに共有します。...