從零開始的linux 第十一章

從零開始的linux 第十一章


同學們早上好~~已經要步入秋天了~~同學們要記得看天氣的變化,適當的增加衣服哦~~沒錯~~適當的增加(害羞~)

wKiom1nHB-DhxUQcAAAI_LPz8gw408.jpg

這次小編的博客不出意外的話是週六更新一次~~這周小編推遲了一天更新~~因爲小編昨天在考試啦~~至於怎麼樣...嗯,我們還是來討論一下這章講什麼內容吧~~

wKioL1nHCEnjx0-NAAAJbKNiTg4266.jpg

好啦~~廢話不多說,上一章小編給同學們介紹了 history歷史的調用history當中的環境變量,還有 bash中的快捷鍵用法。咦~~這麼一總結,小編上一章講的還真是少呢~


嘛~不要在意這些細節~這一章可能就很多咯~~而且,會有那麼一點亂~

之前,小編已經提到過一些 變量 的詞和引用變量的值,具體如何實現的呢~小編之前提到引用變量的方法是:

echo $變量名 即可查看一個變量的值,那麼究竟什麼是變量呢?這裏小編就先給同學們簡單介紹一下,以後小編給同學們講腳本的時候,會詳細的講解~~


變量,說的通俗一點就是可以改變的量,它是一個值,而這個值可以是數字,也可以是字母,也可以是特殊字符。比如說,小編讓 "A" 的值等於一個字符串(數字,字母,特殊字符統稱爲字符,組合則成爲字符串)

wKiom1nHDQ3i4wfxAAAFkbCCa18386.png

此時,"A" 就相當於一個變量,而它的值,就是 "=" 號後面的字符串。而小編剛纔的操作,就是給一個變量賦值。所謂給一個變量賦值,就是左邊一個字符串與右邊一個字符串中間用 "=" 號連接的過程。但左邊的字符串是有要求的:它只能包含數字、字母、下劃線,而且不能以數字開頭不能是程序中自帶的變量,否則會導致程序無法正常使用。(注意咯~ "=" 號後面的字符串,若不是純數字,建議用 "" 雙引號引起來)


好啦~關於變量,小編就先給大家簡單介紹這麼多,雖然是簡單介紹,小編覺得同學們已經能簡單理解變量是什麼了~~

那麼,如何給變量賦值,小編上面也已經簡單介紹過了,但是要注意哦~這種給變量賦值的方法,只能是當前終端有效。

變量的賦值,以及如何去查看一個變量,相信同學們都已經理解了。比如,小編剛纔給 A 這個變量賦值,想查看這個變量的值:

echo $A

wKioL1nHEGGDURFDAAAJHb3aR6U716.png

那麼,這個過程是如何來實現的:

echo:顯示字符

該命令的本質作用是顯示字符,比如小編在 echo 命令後面亂敲一些字符:

wKioL1nHEPGAeirCAAAJHbCYjkY332.png

echo 會將輸入的字符串送往標準輸出,輸出的字符串中間用空白字符隔開,並在最後加上換行。這裏的標準輸入輸出:標準輸入:最多的是 鍵盤等,標準輸出:顯示器等等....

該命令雖然簡單,也是有選項的~~~

-n:不換行

wKioL1nHEtTwf_bDAAAHLVzYsLw936.png

仔細看小編這個終端的命令提示符的位置,顯示在了 echo 輸出的字符串的後面,對比小編上面不加 -n 選項的圖,相信同學們就能理解咯~~

什麼!?你說難看還沒用!?

(↓小編的內心)

wKioL1nHFC-DTmV9AABNlo2QqPE691.jpg

這個以後同學們寫腳本以及各種地方都會用到,尤其是,寫腳本~所以不要看這命令簡單~~會很好用的哦~~

-E:不支持 \ 解釋功能(默認)

這個不支持以及支持 \ 解釋功能,小編就放在一起講吧~~

-e:啓用 \ 字符的解釋功能

echo 命令還有一些以 \ 開頭的選項,而 -E 與 -e 就是是否啓動該選項的功能。若啓用,就不會將這些選項當成普通的字符串輸出~~(注意哦~ \選項內容要用 "" 雙引號引起來)

\a:發出警告聲

(↑這個小編就不做示範咯~畢竟效果同學們也看不出來嘛~小編也不能錄音給同學們聽~)


\c:最後不加上換行符號

wKioL1nHFkfx_DCkAAAGdPGT7Bs966.png

可以看到,和 -n 選項的功能一樣,注意要用雙引號引起來~不然的話:

wKiom1nHFuajl1d1AAAGixTTjvs639.png

可以看出,是沒有效果的~~


\n:換行,且光標移到行首

wKiom1nHF2mz7td4AAAJhgaOrZ0948.png


\r:回車,即光標移到行首,但不換行

wKiom1nHF7igBvomAAAJRuFhwlY146.png

嘛~~這兩個....也沒有太大作用啦~~~


\t:插入tab

wKiom1nHGGqiCyTUAAAJUbsci0o369.png

在 \t 所在處加入 tab


路人甲:“小編大人,什麼是 tab呀?”

wKioL1nHGKyS7ZShAABC0f9Sf8Y962.jpg

(↑聽到問題後憂鬱的小編)

小編可能教的是假學生....wKioL1nHGUuzU6ZHAAAQogUde54826.jpg...好吧,既然是路人甲問的,那小編就勉爲其難的說一下吧~Tab鍵就是鍵盤上面的 Tab,按空格鍵是向後縮進一個字符,Tab相當於,好幾個空格。嗯...這麼說應該沒錯~~


echo 命令基本也就這些,那爲什麼echo能看到變量的值呢?實際上並不是echo能看到,而是echo將變量的值給輸出到終端上而已,真正來引用這個變量的值的:

$:可以引用變量的值

比如,小編上面定義了 A=123,不使用 echo 命令,直接使用 $

wKioL1nHGwWgl6uNAAAKrrueE4Y576.png

提示的是沒有找到 123這個命令,而A的值就是123,直接使用 $是用來引用變量,bash會把這個變量的值當成命令來執行,那麼,只要不是把這個變量的值當成命令,是不是可以在其他地方使用呢?

wKiom1nHG9SSVCAzAAAKWjw88jo263.png

小編把 $A 放到字符串後面,引用A的值,輸出時候,字符串後面會加上A的值


小編再定義一個變量B

wKioL1nHG_zDMDUfAAALqW0OeHE561.png


好啦~~關於變量以及引用變量~~小編就簡單介紹這麼多,具體內容小編後面講腳本會詳細介紹~(注意哦~~ $ 可不僅僅只是用來引用變量的,它還有其他用處,只是在這裏,$ 的作用是引用變量。)


那麼,變量介紹完後,小編給同學們介紹一下bash中的 Tab 補全:

所謂補全,就將不完整東西的補完整~~

  命令補全:

    內部命令

    外部命令:bash根據PATH環境變量定義的路徑,從左到右搜索指定命令名命名的文件,第一次找到的命令爲要執行的命令。當用戶給定的字符只有唯一一個時,按一次 Tab 即可補全命令~~若找到的給定的字符串不是唯一一個,需要再按一下 Tab鍵來列出所有給定關鍵字的列表

wKiom1nHHq2jqcrZAAARDnHfhxw706.png


    路徑補全:

      把用戶給定的字符串當成路徑的開頭,並在其指定的上級目錄下搜索以指定字符開頭的文件名。如果以指定字符開頭的文件只有唯一一個,則直接可以補全,若不是唯一一個,再按一次 Tab鍵會列出列表

wKioL1nHH0ay30fyAAAL-4O72CA076.png

若只給定一個目錄,按兩次 Tab可列出目錄中的所有文件。

wKioL1nHH8viDsyrAAAuLdgEWPQ669.png

這些都爲可用 cd 命令進入的目錄


COMMAND+按兩次Tab:列出所有指定命令的子命令或文件補全

wKioL1nHIJGhZALzAAAU6G4mUvM760.png

顯示的列表爲 ip 命令的子命令(因爲小編似乎還沒有講過有子命令的命令~~所有,同學們不用太在意這個命令是幹什麼的~~小編以後會給同學們講的~~)


/目錄+按兩次Tab:顯示指定目錄下所有子目錄,包括隱藏目錄

wKiom1nHIc2jMbjJAAAPaQCD2xU884.png


./+按兩次Tab:顯示當前目錄下的子目錄,包括隱藏目錄

wKioL1nHIeugonRgAAAQvRP2b80789.png


*/+按兩次Tab:顯示當前目錄下的子目錄,不包括隱藏目錄

wKiom1nHIm6gMQaBAAAQRvixnOs712.png


~+按兩次Tab:顯示所有用戶列表

wKioL1nHInDB8x6GAAA27Kwdpnk531.png

哇~~小編用戶怎麼這麼多呢~~其實真正是小編創建的用戶的,只用一個 zzc 用戶哦~~其他的用戶都是系統創建的,這些小編不久也會講的~~


$+按兩次Tab:顯示所有變量

wKiom1nHI0bjgqqsAAB1Fqrx1Kk089.png

這些是系統中的所有變量~~注意咯~~使用變量賦值的時候,變量名可不要使用這些名字~~


@+按兩次Tab:顯示/etc/hosts記錄。但是這個在Centos7中是不支持的~~很不幸,小編的是Centos7的系統~~所以就沒辦法給同學們演示啦~~同學們下去自己...額...好像你們的也是Centos7...


好啦~~bash中的補全功能也基本就這些咯~~


嗯...這章內容...就結束吧~~小編要趕快補落下的課程啦~~

(竊竊私語)“哇,小編居然還落下課程,果然小編學習也不好吧”

(嘈雜聲...)(嘈雜聲...)(嘈雜聲...)(嘈雜聲...)

無路賽~!(吵死啦~!)小編也是人啊~~偶爾也會有落下課程的時候~~嗯,只是偶爾。不過,小編也才落下了一個下午的課程而已~~~哼哼~讓你們失望咯~~小編依然是很聰明的~~

那麼,下一章再見啦~~



                                          The END

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章