Day1-シェルスクリプトプログラミングの説明(ob13)

1つは、本質的にシェルスクリプトプログラミング01

例1ログのクリアスクリプト

cd /var/log
cat /dev/null > messages

Centos Linuxシステムのデフォルトシェルは何ですか?

#答案: bash
[root@web02 ~]# echo $SHELL
/bin/bash

shとbashの違い

shはbashのソフト接続です
ここに画像の説明を挿入

シェルスクリプトの実行

三つのモード
①バッシュSCRIPT_NAME SCRIPT_NAME又はSH
②パス/またはSCRIPT_NAME ./script_name(現在のパスからスクリプトを実行)
。「」③ソースSCRIPT_NAME SCRIPT_NAME位ノートまたはドット
③特に第一の実施形態
ここに画像の説明を挿入
図のを:
ここに画像の説明を挿入
利用可能なNFSを参照してくださいコンフィギュレーション・ファイル。
ソースか。スクリプトを使用すると、次のようにスクリプトファイル内の変数を呼び出すことができます。それがSHになった場合、それは呼び出すことはできません。
ここに画像の説明を挿入
ここに画像の説明を挿入

2.集中トーク02

変数は、環境変数(グローバル変数とも呼ばれます)とローカル変数の2つのカテゴリに分類できます。
環境変数はコマンドラインで設定できますが、これらの変数値はユーザーが終了すると失われるため、ユーザーのホームディレクトリの**。bash_profileファイルまたはグローバル構成/ etcで定義することをお勧めします/ profile **ファイル。環境変数をプロファイルファイルに入れました。これらの変数値は、ユーザーがログインするたびに初期化されます。

環境変数をユーザープロセスに適用する前に、それらをexportコマンドでエクスポートする必要があります。

環境変数を設定する3つの方法:

① export 变量名=value
② 变量名=value ;  export 变量名
③ declare -x 变量名=value
export NAME=boy
declare -x NAME=boy
NAME=boy; export NAME

#vim家目录下的.bash_profile文件 和 全局配置/etc/profile定义
export OLDBOY='oldboy'

然后再外边 source /etc/profile 或 . /etc/profile使其生效

env | grep OLDBOY

といった:
ここに画像の説明を挿入

環境変数を表示するための手順

env
#和 set显示所有本地变量
set

一重引用符、二重引用符、変数に引用符がないことの説明

ここに画像の説明を挿入
ここに画像の説明を挿入
ここでは、馬と黄金のドラゴンのバッシュコースも参照できます。しかし、awkでは、控訴の結論は反対です。
ここに画像の説明を挿入

シェルの特殊変数

ここに画像の説明を挿入

3、詳細03

bash内部変数

ここに画像の説明を挿入

可変部分文字列操作

ここに画像の説明を挿入
法律:

#从头开始, %从结尾开始。  可变相参考键盘数字的布局来记住这规律

ここに画像の説明を挿入
Shellのパラメーター拡張
http://xstarcd.github.io/wiki/shell/ShellParameterExpansion.htmlを参照することもできます。

変数の数値計算

数値計算の一般的なコマンド:

(())
let
expr
bc
$[]
a=10
echo $((a++))

i=2
let i=i+3
#注意expr的运算符左右都有空格;使用乘号时,必须用反斜线屏蔽其特定含义。因为shell可能会误解星号的含义
expr 3 + 2
expr 3 \* 2
expr $[2*3]

echo "scale=1;5.23 / 3.13"|bc 
typeset -i A=1 B=3
A=A+B
echo $A

シェル変数の入力

読み取りコマンドは、標準入力から取得されます
ここに画像の説明を挿入

4、詳細04

bash条件テスト

#格式1和格式2是等价的
格式1: test<测试表达式>
格式2: [<测试表达式>]
格式3: [[<测试表达式>]]

ここに画像の説明を挿入

ファイルテストオペレーター

ここに画像の説明を挿入

文字列テスト演算子

ここに画像の説明を挿入

比較演算子

ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入

終了2021年1月31日00:01:25

おすすめ

転載: blog.csdn.net/Nightwish5/article/details/113408441