日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

shell linux教程,Shell入门基础知识

發布時間:2024/7/23 linux 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 shell linux教程,Shell入门基础知识 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Shell 簡介

Shell作為命令語言,它交互式地解釋和執行用戶輸入的命令;作為程序設計語言,它定義了各種變量和參數,并提供了許多在高級語言中才具有的控制結構,包括循環和分支。

常常作為批處理命令來使用,用來提高生產效率!

入門

下面是Shell的一段簡單入門程序,我們在Linux上面使用vi test.sh然后將下面的代碼打進去,運行sh test.sh 即可

#!/bin/bash

echo "Hello World !"

上面這段程序是輸出HelloWorld,其中#!/bin/bash 指定編譯器,必須在腳本的第一行,echo輸出信息,這里為輸出Hello World

如何運行這段程序呢, 第一步首先進入到該腳本所在的目錄,比如cd /root/shelltest ,運行命令sh test.sh 這樣就可以進行輸入了。

程序中的變量

定義全局變量

全局變量一直存在,不會因為切換shell終端或者退出登錄而消失,全局變量需要在 /root/.bush_profile 、/etc/bashrc、/etc/profile、/etc/profile.d文件中設置,設置的格式為export name=value

在/etc/profile中定義完成后,需要重新加載配置文件 source /etc/profile

其中在/etc/profile.d設置shell腳本可以在啟動shelle客戶端的時候就執行這個腳本,這個文件夾中存儲的都為腳本。

創建腳本內容如下

則新打開客戶端的時候則會執行這個腳本,輸出對應的內容。

定義局部變量, 局部變量在退出Shell客戶端時會失效

單引號雙引號的區別

單引號:原樣輸出

雙引號:如果里面有變量,會輸出變量

沒有引號:輸出變量

傳遞的參數

可以在調用腳本的時候給腳本傳遞參數,腳本內使用$1 $2 ...... 接受傳遞的參數,當參數超過9的時候,需要用花括號括起來 ${10}

特殊的調用參數:

$0:返回Shell文件名稱

$$:當前腳本的PID

$#:傳遞的所有參數

$@:程序中的所有參數,這是將參數傳遞給其他程序的最佳方式。

$! :執行的上一個命令的PID

$?:上一次指令的返回值

$_:此命令前面的最后一個參數

$* :獲取所有的參數

不同腳本之間訪問變量

使用sh命令啟動的腳本,則在腳本結束其內部的屬性都會消失,其他的腳本不能訪問其內部的屬性。

使用source 命令啟動腳本,則在腳本結束后其屬性不會失效,同時其他的腳本也能訪問到。

取消變量

使用unset可以取消變量,這個變量包括環境變量和局部變量

數組

數組中可以存放多個值。Bash Shell 只支持一維數組(不支持多維數組),初始化時不需要定義數組大小(與 PHP 類似),數組下標從0開始。

定義數組

array=(value1 value2 value3)

array_name[0]=value0

讀取數組

${array_name[index]}

獲取數組中全部的元素

${my_array[@]}

獲取數組的長度

${#my_array[*]}

流程控制

if

如果else語句中沒有執行語句,不可以寫

if condition

then

command1

command2

...

commandN

fi

------------------

if condition

then

command1

command2

...

commandN

else

command

fi

------------

if condition1

then

command1

elif condition2

then

command2

else

commandN

fi

for

for var in item1 item2 ... itemN

do

command1

command2

...

commandN

done

while

while condition

do

command

done

until

類似do-while循環,在最后判斷條件,最少執行一次

until condition

do

command

done

case

case 值 in

模式1)

command1

command2

...

commandN

;;

模式2)

command1

command2

...

commandN

;;

esac

函數

demoFun(){ // 定義

echo "這是我的第一個 shell 函數!"

}

echo "-----函數開始執行-----"

demoFun // 調用,如果需要傳遞參數直接在后面跟就好 demoFun 1 2 3

echo "-----函數執行完畢-----"

運算符

expr 是一款表達式計算工具,使用它能完成表達式的求值操作。

expr 2 + 2 使用方法 , 需要注意的為1.表達式和運算符之間要有空格 2. 需要用``引起來

關系運算符

使用方法:

if [ $a -eq $b ]

then

echo "$a -eq $b : a 等于 b"

else

echo "$a -eq $b: a 不等于 b"

fi

布爾運算符

使用方法

if [ $a -lt 100 -a $b -gt 15 ]

then

echo "$a 小于 100 且 $b 大于 15 : 返回 true"

else

echo "$a 小于 100 且 $b 大于 15 : 返回 false"

fi

邏輯運算符

字符串運算符

文件測試運算符

總結

以上是生活随笔為你收集整理的shell linux教程,Shell入门基础知识的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。