Windows system >> Windowsの知識 >  >> Linuxシステムチュートリアル >> LinuxシステムFAQ >> Linux.Shellプログラミングノート - 入門コンセプト

Linux.Shellプログラミングノート - 入門コンセプト

  

このノートは、本を学ぶためのlinuxShellプログラミングのエントリとそれに関連する仕上げの注意事項に基づいています。 /detail /ruishenh /6586391

第1章概念

プログラムの実行方法
Linuxプログラムの実行方法は3つあります。

1.ファイルの使用は実行可能です。アクセス許可、ファイルを直接実行します。

2.直接コマンドインタプリタを起動してプログラムを実行します。

3.ソースを使用してファイルを実行します。

Linuxの実行可能コマンドは、組み込みコマンド、シェル関数、および3種類に分けられます。外部コマンド

1.組み込みコマンドは、シェルプログラム自体のコマンドです。これらのコマンドはシェルインタプリタに統合されています。例:(cd)

2.シェル関数はシェル言語で書かれた一連のプログラムコードで、他のコマンドと同じように参照できます。

3.外部コマンドは、シェルから独立している実行可能プログラムです。たとえば、find、grep、echo.shなどです。コマンドラインシェルは外部コマンドを実行すると、実行する現在のシェルのコピープロセスを作成します。実行プロセスの間に、作成と終了のプロセスがあります。外部コマンドの実行は以下の通りです。

1 POSIXシステムフォーク関数インタフェースを使用して、コマンドラインシェルプロセス(子プロセス)のコピーを作成します。

2子プロセスの実行環境で、Linuxファイルシステム内の外部コマンドの場所を見つけます。外部コマンドでフルパスを指定する場合は、この手順を飛ばしてください。

3子プロセスで、シェルコピーを新しいプログラムに置き換えて実行(exec)します。この時点で、親プロセスはスリープ状態になり、子プロセスが完了するのを待ちます。

子プロセスの実行後、親プロセスは端末から次のコマンドを読み込みます。

注意

(1)子プロセスは作成開始時の親プロセスとまったく同じですが、子プロセスは親プロセスのパラメータを変更することはできません。

(2)組み込みコマンドだけがコマンドラインシェル(環境変数)のプロパティを変更できます。

sourceを使用してシェルスクリプトを実行する場合は、子プロセスを作成せずに、親プロセスで直接実行します。

Linuxシェル変数
変数

変数は多くのプログラミング言語で定義されており、変数に関連する使用範囲の定義があります。変数の本質は、キーと値のペア(key = value)です。

シェル変数の名前は、文字またはアンダースコアで始まり、その後に任意の長さの単語、数字、またはアンダースコアが続きます。他の多くのプログラミング言語とは異なり、シェル変数名の文字には長さ制限がありません。 Linuxシェルは変数の種類を区別せず、すべての値は文字列であり、変数名のように、値には文字長の制限はありません。魔法のように、bashでは比較演算や整数演算も可能です。主な理由は、変数内の文字列値が数値かどうかです。

変数型:ローカル変数とグローバル変数。

ローカル変数は宣言時にローカル表示で指定する必要があります。グローバル変数は変更する必要はありません。 (環境変数)

エコー出力

 $ echo 'abc' $ echo $ JAVA_HOME 

エクスポートインポート変数

 exportPATH = /usr /local /pig /pig- 0.12.0 /bin:$ PATH 

env関数とset関数は、環境変数を表示する異なるenv関数であり、set関数はユーザーの環境変数を含むすべてのローカル変数を表示します。たとえば、ユーザがコマンドラインで笠Var = 123を設定した場合、set関数はvar変数を表示しますが、Env関数は

を表示しません(varは環境変数ではなくローカルチェンジャになります)。 export var = 123コマンドを使用すると、set関数とEnv関数の両方でvar変数を表示できます。

言語タイプ

コンピュータは高級言語を直接理解することはできず、機械語を直接理解することしかできないため、高級言語で書かれたプログラムを実行するためには高級言語を機械語コンピュータに翻訳する必要があります。

言語は一般にコンパイル済みと解釈済みに分かれています。

コンパイル済み言語には、使用されているようなexeファイルがあります。バイナリファイルまたはJavaプログラムの.classファイル(jarファイル)

インタプリタ型はjs、python、shellなどです。

Linuxシェルの利点

1.簡潔な

Linuxシェルが置かれているカーネル環境により、高度な操作が可能になります。

2.開発が簡単今日のものに最適化されたUnixの哲学に従っているので、前任者の蓄積のもとで開発が簡単です。

3.移植が簡単

任意のunix /linuxで実行してください。

シェルスクリプトに#!を追加して、説明のためのインタプリタを紹介してください。

例:

#!/bin /bash#!/bin /Sh#!/bin /rm#!/bin /more
						
Copyright © Windowsの知識 All Rights Reserved