練習と面接のための Linux シェル スクリプトのヒント 9 つを共有する

練習と面接のための Linux シェル スクリプトのヒント 9 つを共有する

予防

1) 先頭にインタープリターを追加します: #!/bin/bash

2) 構文のインデントに 4 つのスペースを使用し、さらにコメントを追加します。

3) 命名提案ルール: 変数名は大文字、ローカル変数は小文字、関数名は小文字で、名前は実際の機能を反映する必要があります。

4) デフォルトでは、変数はグローバルです。関数内では、他のスコープを汚染しないように、変数 local はローカル変数として指定されます。

5) スクリプトのデバッグに役立つコマンドが 2 つあります。set -e は、ゼロ以外の結果が検出されたときにスクリプトを終了し、set -x は実行プロセスを出力します。

6) スクリプトを作成するときは、本番環境に導入する前に必ずテストしてください。

1 ランダムな文字列または数字を取得する

ランダムな 8 ビット文字列を取得します。

ランダムな8桁の数字を取得します。

cksum: CRCチェックサム統計バイトを出力します

2 色出力文字列関数を定義する

function キーワードは関数を定義し、追加することも追加しないこともできます。

3. ユーザーを一括作成する

4 パッケージがインストールされているかどうかを確認する

5 サービスステータスを確認する

6 宿主の生存状態を確認する

方法1: 間違ったIPを配列に入れて、pingが3回失敗するかどうかを判定する

方法2: エラー数をFAIL_COUNT変数に入れて、pingが3回失敗したかどうかを判定する

方法 3: ping が成功した場合は for ループを使用してループを終了します。終了しない場合は、「ping 失敗」と表示されます。

7. CPU、メモリ、ディスクの使用率を監視する

1) CPU

vmstat ツールを使用して CPU 統計を分析します。

2) 記憶

3) ハードディスク

8 ホストディスク使用率のバッチ監視

前提条件: 監視側と監視対象側に SSH 非対話型ログインまたはキー ログインが使用されていること。

監視対象ホストのSSH接続情報を保存する設定ファイルを作成します。ファイルの内容の形式は次のとおりです: IP ユーザー ポート

9. ウェブサイトの可用性を確認する

1) URLの可用性を確認する

2) URLの可用性を3回確認する

考え方は、上記のホストの生存状態を確認することと同じです。

要約する

以上、面接でよく使われる 9 つの実用的シェル スクリプトを紹介しました。お役に立てれば幸いです。ご質問がある場合は、メッセージを残していただければ、すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • Linux シェル スクリプトの面接の質問 25 選集
  • Linux での C 言語のいくつかの典型的な面接の質問の要約 (共有)
  • Linux netstat コマンドの詳細な説明 (上級面接では必須)
  • Linux での C 言語フォーク関数プロセス操作と関連する面接の質問の説明
  • Linux C++ サーバーサイド開発面接で必読の書籍のまとめ
  • Linux 面接で最もよく聞かれる 10 の質問のまとめ

<<:  WeChatミニプログラムがいいねサービスを実装

>>:  ES6実装クラスのプライベート変数の書き方をいくつか詳しく説明します

推薦する

4つの柔軟なScssコンパイル出力スタイル

多くの人は、Scss を使用する瞬間からコンパイル方法を説明されてきました。したがって、コマンドのコ...

MySQL ステートメントの概要

目次1. データベースの使用を選択2. 情報を表示する3. テーブルを作成する4. データを挿入する...

HTMLの空リンクの役割についての簡単な説明

空のリンク:つまり、ターゲット エンドポイントとのリンクはありません。フォーマット <a hr...

ウェブデザイン研究における XHTML の応用の概要

<br />一般的に、「標準的な Web ページ」のファイル構成は XHTML CSS ...

ミニプログラムカスタムタブバーコンポーネントのカプセル化

この記事の例では、ミニプログラムのカスタムタブバーコンポーネントをカプセル化するための具体的なコード...

CSS は Alibaba ベクター ライブラリを使用して、対応する位置に見栄えの良いアイコン効果をすばやく追加します (サンプル コード)

Alibaba ベクターアイコンライブラリにアクセスAlibaba ベクターアイコンライブラリ好き...

Ansibleを使用してディレクトリ内のすべてのコンテンツを削除する方法

Ansible を使用する学生は、以下に示すように、Ansible が特定のフォルダーまたはファイル...

CSS3 はドラッグ可能なルービックキューブの 3D 効果を実現します

主に使用される知識ポイント: •css3 3D変換 •ネイティブjsマウスドラッグイベント•表示:グ...

Docker での Redis のマスタースレーブ構成チュートリアルの詳細説明

1. Redisイメージを取得するdocker pull redis 2. それぞれポート6379、...

オンデマンドで Vue コンポーネントを自動的にインポートする方法

目次グローバル登録部分登録ローカル自動登録さまざまなソリューションの比較コンポーネント名について参照...

Macでのファイル権限の表示と設定の詳細な説明

序文Mac システムのターミナルでファイルの権限を変更するには、Linux の chmod コマンド...

MySQL レプリケーションの利点と原則を詳しく説明します

レプリケーションとは、マスター データベースの DDL および DML 操作をバイナリ ログを介して...

CSS で 3D ブック効果を実装するためのサンプル コード

さっそく、レンダリングを見てみましょうソースコードは以下のとおりです <!DOCTYPE ht...

MySQL が自動的に再起動する問題の解決方法

序文最近、テスト環境で MySQL データベースが自動的に再起動し続ける問題が発生しました。原因は、...