シェルスクリプトプログラミングの原則day03-

プログラミングI.はじめに

  (コンピュータしかできバイナリ命令)

  1.   初期のプログラミング:ドライブとハードウェアのデフォルトが使用することはできませんが、異なるベンダーの機器との間で命令の通信を必要とし、我々は翻訳する駆動するために必要な、よりタイトでハードウェア開発エンジニア、アセンブリ言語、アセンブリ言語やメーカーによって制限さを学びます。C、C ++は、基礎となるアセンブリ言語であります
  2. 今高水準言語プログラミングだけでなく、超高レベルの言語に基づいて、より優れたレポーティング機能を実装するプログラマを可能にします。高水準言語、コンピュータ読み取り可能な言語に翻訳される超高レベル言語(バイナリ命令)
  3. アセンブラ言語カテゴリー
    • ラインシェルのpythonのJavaによって解釈---プログレッシブ解釈、ライン
    • コンパイルされた---一度コンパイルし、すべてのラインC C ++ C#のJava
    • ---オブジェクト指向プログラミング言語では、データに焦点を当てます
    • 命令に焦点を当てるためのプロセス---
  4. プログラミング言語の実装:

      [エグゼクティブ]行

    • オーダー実行
    • ---ループ実行のための(トラバース)しながら(ループ条件)ANまで(反対ながら)
    • ---ケースならば、分岐を実行することを選択します

二、導入されたシェルスクリプト言語

  シェルステートメントは、命令セットに焦点を当て、プロセス指向です。  

  利点:すべての機能にラインのコマンドOS(オペレーティングシステム)を呼び出します。

  短所:(のpythonと区別)なしライブラリコール

  シェル文の基本的なコンポーネント:

    • コマンド(強調!)
    • 変数(グローバル変数、ローカル変数、ローカル変数)
    • ロジック
    • データ - 変数(回転基準)

  何シェル組み込み関数なし、ライブラリコール、ライブラリインタフェースへのコールなし

三、シェル最初の文(重要)

  

#!/ binに/ bashの// スクリプトインタプリタを定義する(#は、一般的に、特別なコメント行、と考えられている) 
#!は/ usr / binに/ Pythonの

は/ etc /シェル//は、システムのシェルでサポートされている現在のプログラム表示
のエコー $シェル   // ビューをシェルプログラムの現在のセッション 
に/ etc / passwdの // ユーザーのデフォルトの前にシェルプログラムを指定します(/ sbinに/ nologinに)

  シェルの実行:

    1. スクリプトを実行するには、bashコマンド
      • -n表示ロジックエラーは、スクリプト(注:間違った単語を表示することはできません)シェル
      • -xプログレッシブスクリプトの実行(簡単なトラブルシューティング)

       2.のchmod uの+ X filename.shを認可します

        実行への完全なパスを使用します

第四に、変数(いくつかの無名のメモリ空間)

  1. 環境変数
  2. ---ローカル変数定義されたコマンド変数の型を宣言
  3. 関数内で使用するローカルローカル変数  
  4. 変数の型
    • 数値
      • プラスチック製のInt
      • フロートフロート
      • ブール値の真偽0 1
      • 普通の文字と文字列
      • 配列
    • プログラミング言語の分類
      • 強く型付けされた言語---値を処理するためまたは操作で定義する必要があります
      • プログラミング言語は自動的に変数の型を識別することができます

      注:多型:複数の属性を有するデータ、特性は、最終的なデータの使用及びその動作に依存します

  5.パラメータの受け渡し

    • $?---状態に0 1〜255の正しいエラーをコマンドを実行します。
    • $ 1 $ 2つの$ {...}セパレータ10 ---着信データ・コマンド・スクリプトの後、スペース
    • の$#---統計パラメータの数$ {$#}を渡す//このコマンドは、最後の引数を取ることです
    • $ @ ---全ての質量の参加、のリストの形式ですべての出力の質量参加を表し
    • $ * ---全ての質量の参加、のリストの形式ですべての出力の質量参加を表し
    • 仕事は$ @ $の*差に考慮されるべきです

  6.変数のフォーマットを定義します。

    • NAME = VALUE(ハウル割り当てなどが両方Aハウル等を判断します)
    • 宣言する変数の型は、コマンドによって定義されます
    • -la = DECLARE 10   //は、INT()対応 
      DECLARE -a // アレイ
        

  7.変数の命名には2つの方法があり、それぞれの方法は、変数名を指定アンダースコアと命名名前のこぶにします

五、テストファイルテスト、条件付き

  このスクリプトでは、我々は簡単に言えば、それが判断することであり、裁判官が達成するために、テストコマンドを使用することで、文を分岐する必要があります

  1.形式を使用します

    • テスト[opthon]ファイル
    • [条件文] //は括弧内の2つのスペースに参加する必要があります

  2.共通のテストオプション

オプションの比較 -eq等しいです -ne等しくありません より大きい-gt 以上-ge -le少ないです 未満を-lt
審判のオプション  通常のファイルかどうかを判断-f ファイルディレクトリかどうかを判断するには、-d シーケンシャルファイルかどうかを判断-l  ファイルを読み書きする実行権限を持っているかどうかを判断-rwx
協会のオプション -0か -aと !非 -
文字列の解析 =文字列は両側に等しいかどうかを決定します !=等しくありません -Z文字列が存在するかどうか決定されます -nと-n逆効果

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

六、算術論理演算

  そして:&&;または:||;非:!

  てみましょう!+1

  exprの1 * 1

  $ [$ 1 + 10]

  $(($ 1 / $ 2))

   

    

おすすめ

転載: www.cnblogs.com/ljx1/p/11348182.html