小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

計(jì)算機(jī)科學(xué)研究專家攜你初識(shí)Shell

 大文豪賢斌學(xué)長(zhǎng) 2020-05-02

初識(shí)Shell

現(xiàn)在以 Ubuntu 為例介紹Shell安裝:

$ sudo aptitude install -y retext git nodejs npm

$ sudo ln -fs /usr/bin/nodejs /usr/bin/node

$ sudo aptitude install -y calibre fonts-arphic-gbsn00lp

$ sudo npm install gitbook-cli -g

下載

$ git clone https://github.com/tinyclub/open-shell-book.git

$ cd open-shell-book/

編譯

$ gitbook build // 編譯成網(wǎng)頁(yè)

$ gitbook pdf // 編譯成 pdf

關(guān)于Shell

Shell提供了用戶與內(nèi)核進(jìn)行交互操作的一種接口。它把用戶輸入的命令并把它送入內(nèi)核去執(zhí)行。

實(shí)際上Shell是一個(gè)命令解釋器,它解釋用戶輸入的命令并且把它們送到內(nèi)核。非僅如此,Shell有自己的編程語(yǔ)言用于對(duì)命令的編輯,它允許用戶編寫(xiě)由shell命令組成的程序。Shell編程語(yǔ)言具有普通編程語(yǔ)言的很多特點(diǎn),其也有循環(huán)結(jié)構(gòu)和分支控制結(jié)構(gòu)等,用這種編程語(yǔ)言編寫(xiě)的Shell程序與其他應(yīng)用程序具有同樣的效果。

每個(gè)Linux系統(tǒng)的用戶可以擁有他自己的用戶界面或Shell,用以滿足他們自己專門(mén)的Shell需要。

Shell 編程跟java、php等編程一樣,只要有一個(gè)能編寫(xiě)代碼的文本編輯器和一個(gè)能解釋執(zhí)行的腳本解釋器就可以了。

Linux的Shell種類眾多,常見(jiàn)的有:

·Bourne Shell(/usr/bin/sh或/bin/sh)

·Bourne Again Shell(/bin/bash)

·C Shell(/usr/bin/csh)

·K Shell(/usr/bin/ksh)

·Shell for Root(/sbin/sh)

在shell中可以定義函數(shù)。函數(shù)實(shí)際上也是由若干條shell命令組成的,因此它與shell程序形式上是相似的,它非一個(gè)單獨(dú)的進(jìn)程,而是shell程序的一部分。函數(shù)由兩部分組成:函數(shù)名和函數(shù)體。

函數(shù)定義的格式為:

函數(shù)名()

{

命令集合

}

或者

function 函數(shù)名()

{

命令集合

}

Shell函數(shù)和shell程序比較相似,它們的區(qū)別在于:

Shell程序在子Shell中運(yùn)行,而Shell函數(shù)在當(dāng)前Shell中運(yùn)行。因此在當(dāng)前Shell中可以看到Shell函數(shù)對(duì)變量的修改。

現(xiàn)在關(guān)注的是 Bash,也就是 Bourne Again Shell,由于易用和免費(fèi),Bash在日常工作中被廣泛使用。同時(shí),Bash也是大多數(shù)Linux系統(tǒng)默認(rèn)的Shell。

#!告訴系統(tǒng)其后路徑所指定的程序即是解釋此腳本文件的Shell程序。

我們現(xiàn)在寫(xiě)一個(gè)shell腳本,打開(kāi)文本編輯器,新建一個(gè)文件first.sh,擴(kuò)展名為sh代表shell,擴(kuò)展名可以見(jiàn)名知意,如果你用php寫(xiě)shell 腳本,擴(kuò)展名就用php好了。

輸入一些代碼:

#!/bin/bash

echo "Hello Shell !"

"#!" 是一個(gè)約定的標(biāo)記,它告訴系統(tǒng)這個(gè)腳本需要什么解釋器來(lái)執(zhí)行,即使用哪一種Shell。

echo命令用于向窗口輸出文本。

運(yùn)行Shell腳本有兩種方法:

作為可執(zhí)行程序

將上面的代碼保存first.sh,并cd到相應(yīng)目錄:

chmod +x ./first.sh #使腳本具有執(zhí)行權(quán)限

./first.sh #執(zhí)行腳本

注意,一定要寫(xiě)成./first.sh,而非first.sh,運(yùn)行其它二進(jìn)制的程序也一樣,直接寫(xiě)first.sh,linux系統(tǒng)會(huì)去PATH里尋找有沒(méi)有叫first.sh的,而只有/bin, /sbin, /usr/bin,/usr/sbin等在PATH里,你的當(dāng)前目錄通常非在PATH里,所以別寫(xiě)成first.sh,要用./first.sh告訴系統(tǒng)說(shuō),就在當(dāng)前目錄找。

作為解釋器參數(shù)

這種運(yùn)行方式是,直接運(yùn)行解釋器,其參數(shù)就是shell腳本的文件名,如:

/bin/sh first.sh

/bin/php first.php

這種方式運(yùn)行的腳本,無(wú)需在第一行指定解釋器信息,寫(xiě)了也沒(méi)用。

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多