1つのコマンドで、シェルの読み取りコマンドの共通パラメータを理解できます。

1つのコマンドで、シェルの読み取りコマンドの共通パラメータを理解できます。

Shell で受信パラメータを受信する方法は 2 つあることがわかっています。 1 つはスクリプトを通じてパラメータを渡す方法であり、もう 1 つは読み取りを通じて受信パラメータを受け取る方法です。スクリプトを通じてパラメータを渡す簡単な例は次のとおりです。

# スクリプトをパススルーします。$0 はスクリプト名、$1 は最初のパラメータ、$2 は 2 番目のパラメータです [root@host ~]# ./script.sh 1 2
合計 = 3
[root@host ~]# vim script.sh
#!/bin/bash
関数add(){
  合計=$(式$1 + $2)
  echo -e "合計 = $total"
}
1ドル追加 2ドル

read を通じて受信パラメータを受信する方法を見てみましょう。まず、read の基本形式を見てみましょう。

読み取り [-rs] [-a 配列] [-d 区切り文字] [-n n文字] [-N n文字] [-p プロンプト] [-t タイムアウト] [var1 var2 var3......]

[root@host ~]# ./script.sh 
パスワードを入力してください:
入力したパスワードは: Test@1234\
[root@host ~]# vim script.sh
#!/bin/bash
read -n10 -t30 -r -s -d $ -p "パスワードを入力してください:" パスワード
echo -e "\n入力したパスワードは:$password"
  • -p プロンプト ステートメント、続いて入力プロンプト情報が続きます。ここでは「パスワードを入力してください:」です。
  • -nパラメータ番号、パスワードの長さを制限する必要がある場合や、[Y/N]などの入力長さの制限がある場合は、1つの入力のみを入力します。-n1
  • -s シールドエコー、入力内容は画面に表示されません。通常はパスワード入力に使用されます。
  • -t 待機時間。ここでは 30 秒に設定されています。30 秒以内に入力が行われないか、入力が不完全な場合は、システムが終了します。
  • -d 入力制限、ここには $、$ への入力、入力の自然な終了
  • -rは特殊文字\の変換機能をブロックし、追加後に通常の文字として扱います。

上記の例から、上記の一般的な機能のほとんどが基本的にカバーされており、特に -p、-n、-t、-s などのパラメーターは、読み取りコマンドをよく学習するために使用できます。

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • PowerShell 関数でパイプライン パラメータを受け取る例
  • シェルスクリプトはパラメータを走査するためにforループを使用する
  • シェルの共通パラメータと判定コマンドの紹介
  • シェルで関数パラメータとして配列を使用する方法(詳細説明)
  • シェルスクリプトでパラメータを渡す3つの方法の比較
  • シェルスクリプトで2つのダッシュを使用して外部パラメータを受け取る方法

<<:  CocosCreatorでWeChatゲームを作成する方法

>>:  CMD で MySQL データベースを操作するときに中国語の文字化けが発生する問題の解決方法

推薦する

CSS でフローティングにより親要素の高さが崩れる問題を解決するいくつかの方法

以前は、フロートはレイアウトによく使用されていましたが、フローティングレイアウトを使用すると親要素の...

Ubuntu環境でのPHP関連のパスと変更方法

Ubuntu環境におけるPHP関連パスPHP パス /usr/bin/php phpize5 /us...

Linux での mysql および mysql.sock のインストールに関する問題

最近、Linux に Aphace、mysql、php をインストールするときに多くの問題に遭遇しま...

CSS でフッターの「下部吸収」効果を実現

よく遭遇する問題: 下部の要素を「下部に貼り付ける」効果を CSS でどのように実現するか。この記事...

JQuery データグリッドクエリの詳細な説明

目次ツリー項目にコードを追加します。 1. 右側に関連情報ページを保存します(userManage....

実用的なウェブオンラインツール12選

1.ファビコン.cc ico アイコンの Web サイトをオンラインで作成するには、画像をアップロー...

React Nativeのカスタムルーティング管理に関する深い理解

目次1. カスタムルーティング2. タブナビゲーション3. データの返却要約する1. カスタムルーテ...

Pycharmとsshリモートアクセスサーバーdockerの詳細なチュートリアル

背景: 一部の実験はサーバー上で完了する必要があります。したがって、リモート サーバー上のコードをロ...

MySQL 最適化のヒント: 重複削除の実装方法の分析 [数百万のデータ]

この記事では、MySQL 最適化のヒントで重複したエントリを削除する方法を例を使って説明します。ご参...

HTMLページ作成に関する私の経験の簡単な要約

Word of Mouth に入社して 3 ~ 4 か月が経ちました。仕事の中で一番の収穫は、ビジュ...

Sublime TextがUbuntuで中国語を入力できない問題の最も簡単な解決策

崇高なSublime Text はコード エディター (Sublime Text2 は有料ソフトウェ...

2時間のDocker入門チュートリアル

目次1.0 はじめに2.0 Dockerのインストール3.0基本的なDockerコマンド4.0 Do...

MAC 上の MySQL の初期パスワードを忘れた場合の対処方法

MACでMySQLの初期パスワードを忘れた場合の解決策を参考までに共有します。具体的な内容は次のとお...

Vueフロントエンドの効率的な開発のためのレンダリング手順をリストします

v-for ディレクティブリストといえば、ループについても触れなければなりません。v-for 命令は...

CentOS7 システムでスワップを増やす方法の例

序文スワップは、ディスク上にある「仮想メモリ」の一部である特殊なファイル (またはパーティション) ...