mac上的終端bash命令

(一) Bourne-Again Shell簡介

mac上的終端使用的是Bourne-Again Shell命令梭伐,簡稱bash

bash是GNU組織開發(fā)和推廣的一個項目,是對Bourne shell的擴展

Bourne shell是 UNIX 最初使用的 Shell烁落,作者Steven Bourne

bash是許多Linux平臺的內(nèi)定Shell,傳統(tǒng)UNIX上還有許多Shell,包括tcsh厨喂、csh曾雕、ash奴烙、bsh、ksh

Shell Script大致都類同剖张,一個Shell Script通城芯鳎可以在很多種Shell上使用

狹義的Shell指的就是命令行終端

shell的作用:用戶輸入指令,通過Shell和內(nèi)核溝通搔弄,控制硬件正常工作

(二)基礎(chǔ)

打開終端幅虑,在里面輸入命令,一般終端已經(jīng)幫你輸入了“$”符號顾犹,只要輸入具體命令就可以了

1.$echo

命令echo 表示:輸出文本

$ echo"hello world"

輸入結(jié)果:hello world


2.$cd

命令cd表示:進入某文件夾目錄倒庵,或返回某目錄

1)進入根目錄

$ cd /

2)進入某目錄(如下:進入bin目錄)

$ cd bin?

3)返回到上層目錄

$ cd ..

3)返回上上層目錄(中間沒用空格)

$ cd ../ ../

4)進入用戶目錄(~)

$ cd ~


3.$ls

命令ls表示:顯示本層目錄的所有文件和文件夾

$ ls

當(dāng)ls后面加上具體的目錄時直接輸入該文件夾的詳細(xì)目錄信息(比如bin目錄如下)

$ ls bin


4.$whereis

命令whereis表示:查找某程序的路徑(比如gcc如下)

$ whereis gcc

輸入結(jié)果:/usr/bin/gcc


5.命令記憶功能:

按上下鍵,可以查看使用過的所有命令

這些命令存儲在用戶目錄.bash_history文件中:~/.bash_history


6.自動補全功能:

1)按tab鍵蹦渣,當(dāng)再一串指令的第一個詞后面哄芜,自動補全命令

2)按tab鍵,當(dāng)再一串指令的第二個詞后面柬唯,自動補全文件名或文件目錄

3)連按兩次tab鍵认臊,(上面兩種情況中,若再按一次tab鍵)锄奢,則顯示所有某些字母開頭的命令失晴,或本目錄下的所有文件名


7.命令別名功能:$alias

當(dāng)一條命令太長剧腻,可以用alias命令為其他命令設(shè)置別名

例如,要查看本目錄下的所有文件涂屁,包括隱藏文件书在,用命令:

$ ls -al

為了方便記憶,可以為上面的命令取一個別名lsall拆又,操作如下:

$ alias lsall='ls -al'

之后就可以用$lsall命令儒旬,來查看本目錄下的所有文件


8.$man

命令man用于查看某命令的詳細(xì)說明文件,(比如查看ls命令說明如下)

$ man ls? ?

退出時用輸入q


9.$type

命令type用于判斷某命令是不是bash內(nèi)置命令帖族,或是來自外部(例如cd命令和ls命令如下:)

$ type cd

輸出"cd is a shell builtin"栈源,表示cd是bash內(nèi)建命令

$ type ls

輸出"ls is hashed (/bin/ls)",表示ls是外部命令竖般,后面是程序路徑

如果定義了一個命令的別名為lsall甚垦,此時用$type命令查看lsall

$ type lsall

輸出"lsall is aliased to `ls -al'",表示lsall是ls命令的別名

10.跨行命令涣雕,轉(zhuǎn)義命令執(zhí)行鍵(轉(zhuǎn)義回車鍵)

當(dāng)輸入一行太長的命令時艰亮,為了更清楚,可以先輸入"\"挣郭,然后輸入回車鍵迄埃,跳到下一行

下一行前面會出現(xiàn)">"符號,然后可以繼續(xù)寫沒寫完的命令

用兩行輸入完整的命令丈屹,例如:

$ cd /Users/xiaoa \回車

回車替換為回車符调俘,會在下一樣出現(xiàn)">",繼續(xù)輸入"/test"

> /test

兩行命令等于如下一行:

$ cd /Users/xiaoa/test

11.在bash中輸入$bash命令旺垒,將啟動一個子bash程序彩库,用$exit命令退出子程序


12.命令組合,與優(yōu)先執(zhí)行

用反單引號(就是鍵盤上方數(shù)字鍵1左邊的鍵先蒋,不是單引號)包裹命令:`命令`

或$(命令)骇钦,來優(yōu)先執(zhí)行某個命令,然后把返回的內(nèi)容作為其他命令的輸入竞漾,例子如下:

$ echo `ls -a`

$ echo $(ls -a)

上面的命令語句都有同樣的作用:先用$ls命令獲得本路徑的所有文件名包括.的文件眯搭,然后把返回的結(jié)果用$echo命令打印出來

一般用 $(命令) 先執(zhí)行一段指令的比較多,因為反單引號太容易引起歧義

(三)變量

1.什么是變量

x=200

等號左邊的就是變量业岁,等號右邊的就是變量的內(nèi)容

變量具有可變性


2.變量的作用

用簡單的字符鳞仙,來替代復(fù)雜的易于變動的內(nèi)容


3.變量定義

$ testdata="is test"

這樣就定義了一個變量testdata

使用變量時必須加上"$"符

$ echo$testdata

輸出"is test"

輸出時,需要附加其他的字符串笔时,可以用${變量}

$ echo this is${testdata}

輸出"this is test"


4.取消變量設(shè)置

用$unset命令取消變量設(shè)置

$ unset testdata

命令unset后邊直接跟變量名棍好,注意沒有"$"符號


5.變量定義規(guī)則

1)等號的左右兩邊都不能有空格

2)變量初始化的時候必須賦值,未賦值過的變量為空,但echo未賦值過的變量不會報錯借笙,沒有任何輸出

3)變量名只能由英文字母扒怖、數(shù)字和短下劃線"_"組成,且開頭字符不能是數(shù)字

4)當(dāng)變量內(nèi)容里有空白字符時业稼,可用用雙引號"盗痒,或單引號',把內(nèi)容包含起來

  但雙引號內(nèi)的特殊字符如$等保留原有特性低散,比如

$ testdata="home is $HOME"

$ echo$testdata

輸出"home is /Users/a"

而單引號內(nèi)的特殊字符則變?yōu)榧兾谋靖┑耍热?/p>

$ testdata='home is$HOME'

$ echo$testdata

輸出"home is $HOME"

5)可以用"\"符來轉(zhuǎn)義特色字符(比如回車符enter,$熔号,\看成,空白字符,等)為一般字符

$ testdata=home\ is\ home

$ echo$testdata

上面轉(zhuǎn)義了空白字符跨嘉,所以不會報錯,輸出"home is home"

6.環(huán)境變量

1)用$env命令吃嘿,查看所有已經(jīng)定義過的環(huán)境變量祠乃,env是environment(環(huán)境)的縮寫

$ env

用$export也可以查看


2)用$set命令,查看所有環(huán)境變量和自定義變量

$ set


3)區(qū)別于自定義變量兑燥,環(huán)境變量通常用大寫字母表示亮瓷,比如:PATH, HOME, MAIL, SHELL等?

查看環(huán)境變量PATH

$ echo$PATH

PATH:是可執(zhí)行文件路徑,目錄與目錄之前用":"隔開降瞳,當(dāng)執(zhí)行某個命令或程序時嘱支,依據(jù)PATH定義的目錄來搜索程序,排前的先搜索

RANDOM:代表隨機數(shù)挣饥,介于0~32767之間

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末除师,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子扔枫,更是在濱河造成了極大的恐慌汛聚,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,311評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件短荐,死亡現(xiàn)場離奇詭異倚舀,居然都是意外死亡,警方通過查閱死者的電腦和手機忍宋,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評論 2 382
  • 文/潘曉璐 我一進店門痕貌,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人糠排,你說我怎么就攤上這事舵稠。” “怎么了?”我有些...
    開封第一講書人閱讀 152,671評論 0 342
  • 文/不壞的土叔 我叫張陵柱查,是天一觀的道長廓俭。 經(jīng)常有香客問我,道長唉工,這世上最難降的妖魔是什么研乒? 我笑而不...
    開封第一講書人閱讀 55,252評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮淋硝,結(jié)果婚禮上雹熬,老公的妹妹穿的比我還像新娘。我一直安慰自己谣膳,他們只是感情好竿报,可當(dāng)我...
    茶點故事閱讀 64,253評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著继谚,像睡著了一般烈菌。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上花履,一...
    開封第一講書人閱讀 49,031評論 1 285
  • 那天芽世,我揣著相機與錄音,去河邊找鬼诡壁。 笑死济瓢,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的妹卿。 我是一名探鬼主播旺矾,決...
    沈念sama閱讀 38,340評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼夺克!你這毒婦竟也來了箕宙?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,973評論 0 259
  • 序言:老撾萬榮一對情侶失蹤懊直,失蹤者是張志新(化名)和其女友劉穎扒吁,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體室囊,經(jīng)...
    沈念sama閱讀 43,466評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡雕崩,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,937評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了融撞。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片盼铁。...
    茶點故事閱讀 38,039評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖尝偎,靈堂內(nèi)的尸體忽然破棺而出饶火,到底是詐尸還是另有隱情鹏控,我是刑警寧澤,帶...
    沈念sama閱讀 33,701評論 4 323
  • 正文 年R本政府宣布肤寝,位于F島的核電站当辐,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏鲤看。R本人自食惡果不足惜缘揪,卻給世界環(huán)境...
    茶點故事閱讀 39,254評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望义桂。 院中可真熱鬧找筝,春花似錦、人聲如沸慷吊。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽溉瓶。三九已至急鳄,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間堰酿,已是汗流浹背攒岛。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留胞锰,地道東北人。 一個月前我還...
    沈念sama閱讀 45,497評論 2 354
  • 正文 我出身青樓兢榨,卻偏偏與公主長得像嗅榕,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子吵聪,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,786評論 2 345

推薦閱讀更多精彩內(nèi)容