組み込みシステム開発Xiaobai研究ノート(8)

最後のレビュー

組み込みシステム研究ノート(7)

組み込みシステム開発ツール(前号から続く)

シェル変数タイプ

(1)ローカル変数

1.ローカル変数を表示します

example1
#num = 2
#echo“ this is $ numnd” #num
= 2
#echo“ this is $ {num} nd”

{}が最初のものに追加されていない場合、結果は出力されません。
ここに画像の説明を挿入します

example2
nameのコンテンツに「yes」を追加するには
方法1:#name = "$ name" yes
方法2:#name =#{name} yes

ここに画像の説明を挿入します

例3
サブシェルの下の変数のスコープ#aa
= 11
#bash(サブシェルに入る)
#echo $ aa
#exit(サブシェルを出る#aa
= 22
#echo $ aa

ここに画像の説明を挿入します


リリースローカル変数の未設定
フォーマットの:未設定の変数名

ここに画像の説明を挿入します

(2)環境変数-(システム変数)

1.定義:環境変数は、シェルスクリプトの実行時にすでに定義されています。
2.環境変数は、すべてのユーザープロセスで使用できます。
3. PS1:特権ユーザーの場合、デフォルトのメインプロンプトは#です。通常のユーザーの場合、デフォルトのメインプロンプトはドル記号です
。4。PS1変数の特殊記号
PS1 = '[\ u @ \ h \ w] \ドル記号 '
\ u:現在のユーザーアカウント名
\ h:ホスト名の名のみを取得
\ w:作業ディレクトリ名、最後のディレクトリ名のみを一覧表示
\ s:rootユーザーの場合はプロンプト、それ以外の場合は#はドル記号
5です。#PATH
(1)シェルがコマンドまたはプログラムを検索するディレクトリを決定し、PATHの値は一連のディレクトリです
(2)LinuxはPATH変数を変更します

このログインに対してのみ有効にしたい場合は、
PATH =ドル記号PATH <path1> <path2> ...永久に
有効にしたい場合は
、上記の文をbashrcに永久に追加してください

6.
エクスポートでは、エクスポートを使用してローカル変数を環境変数として設定できます。
形式:エクスポート変数名。変数に
値を割り当てるときにexportコマンドを使用することもできます。
エクスポート変数名=変数名(の両側にスペースがある場合)等号、引用符で囲む必要があります)
ここに画像の説明を挿入します

n1を環境変数として設定します。サブシェルに入った後でも、実行できます。

(3)特殊変数

1.一部の変数は設定されており、スクリプト実行の開始時に変更されません。これらは特殊変数と呼ばれます。ユーザーはこれらの変数をシェルに従ってのみ使用でき、再定義することはできません。すべての特殊変数はドル記号と別の記号で構成されます。組成。
2. $#:シェルプログラムコマンドパラメータの数を格納します
3. $?:シェルで実行されたプログラムの戻り値を格納します(0は実行の成功を意味し、ゼロ以外はエラーを意味します)
4。$ [1-n]:[1-n]コマンドラインパラメータを
格納します5. $ 0:シェルプログラムを格納しますそれ自体
6の名前、$ *:シェルスクリプト
7のすべての行を格納します。$ $:シェルスクリプト
ここに画像の説明を挿入します
シフトコマンド
1のプロセス番号(pid)を格納します。コマンドラインパラメータを移動できます。shiftを実行した後、各パラメーターを1つ左に移動します。$ 2 $ 3 ... $ 1 $ 2に変わります...元の$ 1は破棄されます
ここに画像の説明を挿入します

特別なシンボル

1.引用記号
bashでは、多くの文字に特別な意味があります。特定の文字の意味を無視する場合は、「引用」を使用してシェルに通知し、引用された文字の特別な意味を一時的に保護して、通常の文字として扱うことができます。
〜:ユーザーホームディレクトリ
`:(二重引用符で意味が失われることはありません)コマンド置換文字は引用符の反対です。バッククォートの文字はシェルによって解釈されます。シェルが実行されると、コマンドが実行されます。最初に、その標準出力がバッククォート全体(2つのバッククォートを含む)を置き換えます。
#:コメント関数
$:変数置換の代表記号
&:バックグラウンド実行で名前が付けられます
*:任意の文字を表すワイルドカード
(:括弧を使用して一連の命令を形成します
):括弧を使用して一連の命令を形成しますコマンドグループ
:エスケープ文字( ""で意味を奪われていない)
|:pipe
?:任意の1文字を表す
<:入力リダイレクト
。>(直角括弧):出力リダイレクト
':変数置換機能はありません
":変数の機能があります置換
/:パス;:
コマンドセパレータ
2。シェル内の3つの引用記号
エスケープ文字:\

シェルの特殊文字の前に\が配置されている場合、シェルはその文字の特殊文字を無視します。このように、特別な意味を無視する各特殊文字に\文字を追加する必要があります。

アポストロフィ:'

一重引用符のグループの間に文字を入れます。一重引用符内のすべての文字の特別な意味は無視され、通常の文字としてのみ解釈されます。

二重引用符: "

二重引用符で囲まれたコンテンツは、単一の文字列として扱われます。ワイルドカードの拡張を防ぐため。ただし、変数の拡張は許可します。

おすすめ

転載: blog.csdn.net/m0_52251623/article/details/114960511