溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux的shell腳本語言是什么

發(fā)布時(shí)間:2020-07-11 15:15:55 來源:億速云 閱讀:389 作者:Leah 欄目:建站服務(wù)器

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān)Linux的shell腳本語言是什么,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

shell 是操作系統(tǒng)中“提供使用者使用界面”的軟件,它包在 linux 內(nèi)核的外面,為用戶和內(nèi)核之間的交互提供了一個(gè)接口,系統(tǒng)中的命令用 shell 去解釋,shell 接收系統(tǒng)回應(yīng)的輸出并顯示其到屏幕中。

1.shell簡(jiǎn)介

  • 解釋性語言——shell腳本、python,運(yùn)行效率低,基本只適用企業(yè)內(nèi)部
    shell——腳本,記錄系統(tǒng)命令及命令執(zhí)行的系統(tǒng)關(guān)系,充當(dāng)解釋器
    gcc ——編譯器
    vim ——編輯器
#!/bin/bash          幻數(shù),指定解釋器#!/usr/bin/env bash  自動(dòng)匹配解釋器
  • 描述性語言——C語言、java,執(zhí)行效率高

1.腳本的調(diào)用
腳本(一般以.sh結(jié)尾):

[root@desktop5 mnt]# vim westos.sh#!/bin/bash echo hello westos

方法一:無執(zhí)行權(quán)限,用sh調(diào)用

[root@desktop5 mnt]# sh westos.sh

方法二:有執(zhí)行權(quán)限,用絕對(duì)路徑調(diào)用

[root@desktop5 mnt]# chmod +x westos.sh [root@desktop5 mnt]# /mnt/westos.sh

2.腳本的檢查


 + 表示:執(zhí)行動(dòng)作

無+表示:動(dòng)作輸出


方法一:

[root@desktop5 mnt]# sh -x /mnt/westos.sh

Linux的shell腳本語言是什么
方法二:

[root@desktop5 mnt]# vim westos.sh#!/bin/bash -xecho hello westos

Linux的shell腳本語言是什么


實(shí)驗(yàn)一:快捷鍵F4執(zhí)行填充
方法一:

[root@desktop5 mnt]# vim /etc/vimrc map <F4> ms:call WESTOS()<cr>'s       
##ms:執(zhí)行命令時(shí),不提示報(bào)錯(cuò)function WESTOS()         
call append(0,"#################################")         
call append(1,"# Author :       Hao            #")         
call append(2,"# Mail :         Hao@westos.com #")         
call append(3,"# Version :      1.0            #")         
call append(4,"# Create_Time:   ".strftime("%Y-%m-%d")."     #")    ##時(shí)間更新
call append(5,"# Description:                  #")         
call append(6,"#################################")
endfunction

方法二:利用.來承接后面的#

map <F4> ms:call WESTOS()<cr>'sfunction WESTOS()         
call append(0,"#################################")         
call append(1,"# Author :       Hao".("            #"))         
call append(2,"# Mail :         Hao@westos.com".(" #"))         
call append(3,"# Version :      1.0           ".(" #"))         
call append(4,"# Create_Time:   ".strftime("%Y-%m-%d").("     #"))         
call append(5,"# Description:                 ".(" #"))         
call append(6,"#################################")
endfunction

測(cè)試:

[root@desktop5 mnt]# vim westos.sh        ##按‘F4’執(zhí)行填充

Linux的shell腳本語言是什么

實(shí)驗(yàn)二:執(zhí)行新建以.sh結(jié)尾的vim文件時(shí),自動(dòng)填充
注意:舊文件不自動(dòng)填充
方法一:

[root@desktop5 mnt]# vim /etc/vimrc autocmd BufNewFile *.sh exec ":call WESTOS()"    ##新文件,以.sh結(jié)尾,執(zhí)行,調(diào)用文件"map <F4> ms:call WESTOS()<cr>'s           ##此行注釋,在此"表注釋function WESTOS()
         call append(0,"#################################")
         call append(1,"# Author :       Hao            #")
         call append(2,"# Mail :         Hao@westos.com #")
         call append(3,"# Version :      1.0            #")
         call append(4,"# Create_Time:   ".strftime("%Y-%m-%d")."     #")
         call append(5,"# Description:                  #")
         call append(6,"#################################")
         call append(7,"")
         call append(8,"#!/bin/bash")endfunction

方法二:

[root@desktop5 mnt]# vim /etc/vimrc autocmd BufNewFile *.sh exec ":call WESTOS()""map <F4> ms:call WESTOS()<cr>'s
function WESTOS()
         call append(0,"#################################")
         call append(1,"# Author :       Hao".("            #"))
         call append(2,"# Mail :         Hao@westos.com".(" #"))
         call append(3,"# Version :      1.0           ".(" #"))
         call append(4,"# Create_Time:   ".strftime("%Y-%m-%d").("     #"))
         call append(5,"# Description:                 ".(" #"))
         call append(6,"#################################")
         call append(7,"")
         call append(8,"#!/bin/bash")
endfunction

Linux的shell腳本語言是什么
測(cè)試:

[root@desktop5 mnt]# vim file1.sh  ##新建以.sh結(jié)尾的文件,自動(dòng)填充

2.shell腳本練習(xí)

練習(xí)一:顯示當(dāng)前主機(jī)ip地址

[root@desktop5 mnt]# vim ip_show.sh#!/bin/bashifconfig eth0 | awk -F " " '/inet /{print $2}'  ##inet所在行,以空格間隔,第二個(gè)字符

Linux的shell腳本語言是什么
測(cè)試:

[root@desktop5 mnt]# sh ip_show.sh

Linux的shell腳本語言是什么
練習(xí)二:顯示當(dāng)前主機(jī)中能登陸系統(tǒng)的用戶

[root@desktop5 mnt]# vim user_show.sh#!/bin/bashawk -F : '/bash$/{print $1}' /etc/passwd      ##以bash結(jié)尾,打印出第一個(gè)字符

Linux的shell腳本語言是什么
測(cè)試:
Linux的shell腳本語言是什么
練習(xí)三:執(zhí)行命令后可清空日至
方法一:

[root@desktop5 mnt]# vim clear_log.sh#!/bin/bash> /var/log/messages

方法二:

[root@desktop5 mnt]# vim clear_log.sh#!/bin/bashecho "" > /var/log/messages

測(cè)試:

[root@desktop5 mnt]# chmod +x clear_log.sh [root@desktop5 mnt]# /mnt/clear_log.sh

Linux的shell腳本語言是什么

上述就是小編為大家分享的Linux的shell腳本語言是什么了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI