認識與學習BASH

2022-07-16 10:36:13 字數 1622 閱讀 4996

應用程式在最外面,就如同雞蛋的外殼一樣,因此被稱呼為shell(殼程式)。其實殼程式的功能只是提供作業系統的乙個介面。

應用程式

作業系統(系統呼叫+核心)

硬體linux預設的shell就是bash

「tab「:接在一串指令的第乙個字的後面,則為命令補全

接在一串指令的第二個字以後時,則為檔案補齊

命令別名設定功能:(alias)

檢視所有檔案(包含隱藏檔)及所有的檔案屬性:ls -al

設定別名命令:alias lm=『ls -al』 

可以在指令列輸入alias就可以知道目前的命名別名有哪些。

type [-tpa] name

:1、不加任何選項與引數時,type會顯示出name是外部指令還是bash內建指令

2、「-t」 :type會將name以底下這些字眼顯示出他的意義:

file:表示為外部指令

alias:表示該指令為命令別名所設定的名稱

builtin:表示giant指令為bash內建的指令

「-p」:後接name為外部指令時,才會顯示完整檔名

「-a」:會由path變數定義的路徑中,將所有含name的指令都列出來,包含alias

變數的讀取與設定:echo unset

利用echo來讀取變數,變數在被讀取時,前面必須要加上「$」  格式:echo $variable或者echo $

設定和修改變數的內容:格式  :var=內容

如:echo $myname    //不顯示任何資料,因為這個變數尚未被設定,是空值

myname=vbird  //myname    設定值

echo $myname  //顯示vbird

注意:在bash當中,當乙個變數名稱尚未被設定時,預設的內容是「空」

變數設定規則:

1.變數與變數內容以乙個等號「=」來連線,且等號兩邊不能直接接空格符

2.變數名稱只能是英文本母與數字,但開頭字元不能是數字

3.變數內容若有空格符可使用雙引號【「】或者單引號【『】將變數內容結合起來,但

雙引號內的特殊字元如$等,可以保留原來的特性。如[var="lang is $lang"]則[echo $var]可得[lang is en_us]

單引號內的特殊字元則僅僅為一般字元(純文字),如[var='lang is $lang']則[echo $var]可得[lang is $lang]

4.可用跳脫字元"\"將特殊符號([enter],$,\,空格符,等)變成一般字元

5.在一串指令中,若需藉由其他的指令提供的資訊,可使用反單引號【`指令`】或【$(指令)】。注:`是鍵盤上方1左邊那個按鍵,而不是單引號。

【var=$(uname -r)】再【echo $var】可得【2.6.18-128.el5】

6.若該變數為擴增變數內容時,則可用「$變數名稱」或$累加內容。如【path=「path」:/home/bin】

7.若該變數需在其他子程式中執行,則需要以export來使變數變成環境變數:【export path】

8.取消變數unset,【unset變數名稱】

例:unset myname

認識與學習bash

我們知道,管理整個計算機硬體的其實是作業系統的核心 kernel 而核心一般是需要保護的,因此我們一般使用者只能通過shell來與核心通訊,讓核心完成我們想要完成的工作。那麼系統有多少shell可用呢?為什麼我們要用shell?我們必須通過 shell 將我們輸入的命令與核心通訊,好讓核心可以控制硬...

Linux Shell 認識與學習bash

1 認識bash這個shell bash linux使用的shell版本。我們通過shell將我們輸入的命令與核心通訊,好讓核心可以控制硬體來正確無誤地工作。2 bash的優點 1 命令記憶能力 通過按上下鍵就可以找到前 後乙個輸入的命令 1000個 好處就是可以查詢曾經做過的操作。2 命令與檔案補...

認識與學習BASH 中

1.在設定變數中 單引號與雙引號的最大不同 雙引號能保有變數的內容,單引號僅能是一般字元 2.反單引號 作用 在一串指令中,在 之內的指令將會被先執行,其結果將作為外部的輸入資訊。locate指令可以列出所有的相關檔案檔名。ls l locate crontab 老實來說,使用 version un...