会linux基本命令是脚本语言吗,如何理解Linux Shell和基本Shell脚本语言?
理解Linux Shell:
shell:一個(gè)命令行解釋器,通過(guò)執(zhí)行命令或腳本,幫助用戶與操作系統(tǒng)打交道。
process:進(jìn)程,用戶執(zhí)行的任務(wù)是進(jìn)程,但進(jìn)程不只是任務(wù)。
file:文件放在硬盤(pán)上,包含用戶所有的數(shù)據(jù)。
x-windows(又稱windows):Linux的一種模式,使屏幕包含多個(gè)視窗,讓用戶同時(shí)監(jiān)視多個(gè)任務(wù),方便地穿梭于任務(wù)之間,它是圖形化的。
text terminal:一種只能顯示文字或簡(jiǎn)單圖形的視窗。
session:登入,建立會(huì)話;登出,注銷(xiāo)會(huì)話。
標(biāo)準(zhǔn)Linux發(fā)行版里的shell種類(lèi):
Bourne Shell:它是早期版本中的一種主要的shell,并且后來(lái)成為了標(biāo)準(zhǔn)。由貝爾實(shí)驗(yàn)室的 Stephen Bourne 所寫(xiě)。每個(gè)“類(lèi)Unix”的系統(tǒng)里都至少有一種shell與之兼容。Bourne Shell 的程序命名為“sh”,一般放在 /bin/sh 。
C shell:由 Bill Joy 為 BSD 版本所寫(xiě)。它的語(yǔ)法是模仿C語(yǔ)言的。它主要用于交互式操作,有很多交互式命令,而不太常用于寫(xiě)腳本。
開(kāi)始玩了!
命令有成千上萬(wàn)條,都把它們記住,好嗎?額,很明顯那是不行的。計(jì)算機(jī)的真正用途是簡(jiǎn)化你的工作,你需要過(guò)程自動(dòng)化,所以,你需要腳本。
腳本是命令的集合,保存在文件里。shell能讀取這些文件并且執(zhí)行里面的命令,就像執(zhí)行鍵盤(pán)發(fā)來(lái)的命令。shell還提供各種各樣的編程特性,使得腳本真心強(qiáng)大。
shell編程基礎(chǔ):
開(kāi)啟終端,以獲取shell
看下你用著什么shell,運(yùn)行:echo SHELL
在Linux shell中,美元符號(hào)代表一個(gè)變量
“echo”命令就是回復(fù)你鍵入任何東西
當(dāng)需要串聯(lián)幾個(gè)命令時(shí),管線指令 “|” 就有用了
Linux命令有自己的語(yǔ)法,你的任何錯(cuò)誤都不會(huì)被容忍和接受。如果你寫(xiě)了條不規(guī)范的命令,當(dāng)然不會(huì)如愿執(zhí)行。
#!/bin/sh —— 這個(gè)叫環(huán)境。這句寫(xiě)在shell腳本的首行,使得命令被發(fā)送到?/bin/sh 程序
關(guān)于shell 腳本:
shell腳本就是一個(gè)普通的文本文件,擴(kuò)展名是 ?.sh ,且能夠被執(zhí)行。
編寫(xiě)和執(zhí)行腳本:
打開(kāi)終端
“cd”命令,去到你想存放該腳本的地方
cd,回車(chē),使你的提示符變成home目錄
touch hello.sh(這里我們的腳本命名為hello,而 .sh 是規(guī)定的)
vi hello.sh(nano hello.sh)用你最喜歡的編輯器,我用nano
chmod 744 hello.sh(使腳本可被執(zhí)行)
sh hello.sh 或者 ./hello.sh (執(zhí)行腳本)
編寫(xiě)你第一個(gè)腳本:
#!/bin/bash
# My first script
echo “Hello World!”
如上所述,將這幾行東西,保存在文本文件里,使之可執(zhí)行,并執(zhí)行之。
輸出的樣子:
Hello World!
上面的代碼解釋如下。
#!/bin/bash ( 運(yùn)行環(huán)境 )
# My first script ( 注釋,任何位于#后的東西都被注釋 )
echo “Hello World!” ( 腳本的主要部分 )
編寫(xiě)你第二個(gè)腳本:
是時(shí)候?qū)懴乱粋€(gè)了。這個(gè)腳本會(huì)說(shuō)出你的username和列出運(yùn)行中的process
#! /bin/bash
echo “Hello USER”
echo “Hey i am”USER “and will be telling you about the current processes”
echo “Running processes List”
ps
如上所述,將這幾行東西,保存在文本文件里,文件叫啥名字都行,但記住擴(kuò)展名為 .sh ,使之可執(zhí)行,并執(zhí)行之。
Hello tecmint
Hey i am tecmint and will be telling you about the current processes
Running processes List
PID TTY TIME CMD
1111 pts/0 00:00:00 bash
1287 pts/0 00:00:00 sh
1288 pts/0 00:00:00 ps
覺(jué)得酷嗎?編寫(xiě)腳本就像將想法轉(zhuǎn)變?yōu)榱鞒淌矫钜粯雍?jiǎn)單。通過(guò)內(nèi)置的過(guò)濾器和管道功能,shell 腳本擅長(zhǎng)做簡(jiǎn)單的文件系統(tǒng)操作。
當(dāng)你的需求更復(fù)雜,例如是功能、健壯、性能、效率等方面時(shí),你就需要一個(gè)全能的語(yǔ)言了。
當(dāng)你已經(jīng)熟悉 C、PERL、PYTHON之類(lèi)時(shí),學(xué)習(xí)腳本語(yǔ)言就不覺(jué)得難了。
編寫(xiě)你第三個(gè)腳本:
接著,來(lái)寫(xiě)第三個(gè)也是本文最后一個(gè)腳本。這個(gè)腳本表現(xiàn)為一個(gè)互動(dòng)式的腳本,何不親自執(zhí)行它,說(shuō)下感覺(jué)怎樣?
[code language=”shel”]#! /bin/bash
echo "Hey what’s Your First Name?";
read a;
echo "welcome Mr./Mrs. a, would you like to tell us, Your Last Name";
read b;
echo "Thanks Mr./Mrs.a b for telling us your name";
echo "*******************"
echo "Mr./Mrs.b, it’s time to say you good bye"[/code]
輸出的樣子:
Hey what's Your First Name?
Avishek
welcome Mr./Mrs. Avishek, would you like to tell us, Your Last Name
Kumar
Thanks Mr./Mrs. Avishek Kumar for telling us your name
******************************************************
Mr./Mrs. Kumar, it's time to say you good bye
其實(shí),這事還沒(méi)完。我們只不過(guò)讓你淺嘗了一下。在未來(lái),我們會(huì)全面開(kāi)展“腳本”這個(gè)話題,它會(huì)一直下去,沒(méi)有最詳盡,只有更詳盡。各位在評(píng)論中的寶貴意見(jiàn)都是可贊的!請(qǐng)支持我們,并幫忙宣傳,保持聯(lián)系,敬請(qǐng)關(guān)注!
本文鏈接:http://www.yunweipai.com/3131.html
總結(jié)
以上是生活随笔為你收集整理的会linux基本命令是脚本语言吗,如何理解Linux Shell和基本Shell脚本语言?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: k8s搭建efk
- 下一篇: linux安装meb工具,linux-d