1. スクリプトvim環境スクリプトでは、通常、スクリプト情報を表示する必要があります。この情報は、vimを設定することで自動的に表示されます。 構成情報の意味: set nu は行番号を表示します nu ts=2 と ai を設定する autocmd BufNewFile *.sh,*.script 呼び出し SHELLTITLE() 関数SHELLTITLE() append(0,"#####################################")を呼び出します append(1,"# Author: lee") を呼び出す append(2,"# バージョン: 1.0") を呼び出します append(3,"# Create_Time: ".strftime("%Y/%m/%d")) を呼び出します append(4,"# メール: lee@westos.org") を呼び出します append(5,"# 情報: ") を呼び出す append(6,"#") を呼び出す append(7,"#") を呼び出す append(8,"#####################################")を呼び出します append(9,"") を呼び出す append(10,"#!/bin/bash") を呼び出します 終了関数 図に示すように: スクリプト演習: #!/bin/bash [ -z "$1" ] && { echo "エラー: 次のスクリプトに従ってインターフェースを入力してください!!" 出口 } ifconfig $1 | awk '/\<inet\>/{print $2}' 効果は以下のようになります。 (2)現在のホストの名前と現在のホストにログインしたユーザーのIPアドレスを表示するhost_messages.shを作成します。 #!/bin/bash echo "ホスト名: `ホスト名`" echo "ipaddress: `ifconfig ens3 | awk '/\<inet\>/{print $2}'`" echo "ユーザー名: $USER" !!!シングルクォートとバッククォートの違いに注意してください。シングルクォート''は弱い引用符であり、\ ` $を引用することはできません。バッククォート`は強い引用符であり、すべてを引用できます。 (3)ログをクリアするスクリプトを実行するclear_log.shを作成する #!/bin/bash [ "$USER" != "root" ] && { echo "$0 を root で実行してください !!!" 出口 } [ ! -e "/var/log/messages" ] && { echo "ここにはログファイルがありません!!!" 出口 } > /var/log/メッセージ && { echo ログファイルがクリアされました!!! 出口 } 2. シェルスクリプトで環境を定義する方法環境レベル シェルコマンド export a=1 で指定された変数値を使用すると、2つが同じシェルで開かれないため、スクリプト内で認識されません。 3. シェルスクリプト内の翻訳された文字1文字を翻訳する: \ 4. スクリプト内の変数の配列a=(1 2 3 4 5) 5. システムコマンドのエイリアス設定alias xie='vim' # シェルの失敗をオフにする一時的な設定 vim ~/.bashrc #ユーザーレベルの設定ファイル vim /etc/bashrc #システムレベル エイリアスを削除するには: 6. スクリプトでパラメータを渡す非対話型モード: インタラクティブモード: #!/bin/bash read -p "単語を入力してください:" WORD $WORDをエコーする 効果は以下のようになります。 -sは入力した単語を非表示にすることを意味します #!/bin/bash read -p "単語を入力してください:" -s WORD $WORDをエコーする 入場時に隠れた効果が発生します。 図に示すように: スクリプト演習: #!/bin/bash [ -z $1 ] && { echo "ユーザー名を入力してください: !!" 出口 } id $1 &> /dev/null && { echo "$1 は終了です!!" }||{ ユーザー追加 $1 &> /dev/null read -p "ユーザーのパスワードを入力してください: " -s PASS エコー " " echo $PASS |passwd --stdin $1 &> /dev/null && { echo "ユーザーの作成に成功しました!!" } } 効果は以下のようになります。 7. スクリプト内のループ機能#!/bin/bash エコー() { [ "$WORD" = "終了" -o "$WORD" = "終了" ] && { エコーバイバイ 出口 } read -p "単語を入力してください:" WORD $WORDをエコーする エコー } エコー 関数を使用すると、スクリプト アクションをループ内で実行できます。 効果は以下のようになります。 スクリプト演習: #!/bin/bash ファイル() { [ $1 "$FILENAME" ] && { echo $FILENAME は "$2" です エコー "" チェック } } チェック() { read -p "ファイル名を入力してください:" FILENAME [ "$FILENAME" = "exit" ] && { エコーバイバイ 出口 } ファイル "! -e" "見つかりません" FILE -L "リンクファイル" FILE -f "共通ファイル" FILE -d "ディレクトリ" FILE -S "ソケット" FILE -b "ブロックファイル" FILE -c "cahr ファイル" チェック } チェック 効果は以下のようになります。 スクリプト演習 2: #!/bin/bash ユーザーの作成() { read -p "ユーザー名を入力してください: " USER エコー "" [ "$USER" = "終了" ] && { エコーバイバイ 出口 } id $USER &> /dev/null && { echo "$USER は終了しました!!" ユーザーの作成 }||{ ユーザー追加 $USER read -p "パスワードを入力してください:" -s PASS エコー "" echo $PASS |passwd --stdin $USER &> /dev/null && { エコー "" echo $USERが作成されました!! } } ユーザーの作成 } ユーザーの作成 効果は以下のようになります。 Linux スクリプトの基礎の詳しい紹介はこれで終わりです。Linux スクリプトの基礎に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: MySQL シリーズ 10 同時実行制御を実装するための MySQL トランザクション分離
目次ベース戻り値の型文字列とブール値数値とbigintシンボル未定義関数物体他のよくある質問参照エラ...
目次1. データベースの使用を選択2. 情報を表示する3. テーブルを作成する4. データを挿入する...
目次1. 暗黙的な変換二重等号での変換ブール型変換「+」と「-」 2. 強制型変換' ...
この記事のシナリオと組み合わせて、Nginx と Java 環境 (SpringBoot プロジェク...
1 インストールMYSQL 公式サイトから対応する解凍バージョンをダウンロードし、必要なディレクトリ...
目次1. ノード、ツリー、仮想DOM 2. 仮想DOM 2.1 データオブジェクトの詳細2.2 制約...
SQL Server のバッチコメントバッチ注釈Ctrl + (K, C): Ctrlキーを押しなが...
[LeetCode] 196.重複したメールを削除するSQL クエリを記述して、Person とい...
オンラインショッピングモールデータベース - 商品カテゴリデータ操作(I)プロジェクトの説明電子商取...
html4:コードをコピーコードは次のとおりです。 <フォーム> <p>&l...
目次序文一般的な方法1. 親コンポーネントを介して子コンポーネントの発行イベントをリッスンしてpro...
JS で CSS 変数を使用する方法:export キーワードを使用して、js オブジェクトを le...
HTML ドキュメント内の要素は次々に配置され、ブロックレベル要素の前後に改行が追加されるだけで、合...
多くの場合、Linux システムに Web サービス アプリケーション (Tomcat、Apache...
問題の説明ご存知のとおり、MySQL でフィールドを昇順に並べ替える SQL は次のとおりです (i...