4.2.1 編寫(xiě)簡(jiǎn)單的腳本

2022-05-27 15:30 更新

估計(jì)讀者在看完上文中有關(guān)Shell腳本的復(fù)雜描述后,會(huì)累覺(jué)不愛(ài)吧。但是,上文指的是一個(gè)高級(jí)Shell腳本的編寫(xiě)原則,其實(shí)使用Vim編輯器把Linux命令按照順序依次寫(xiě)入到一個(gè)文件中,這就是一個(gè)簡(jiǎn)單的腳本了。

例如,如果想查看當(dāng)前所在工作路徑并列出當(dāng)前目錄下所有的文件及屬性信息,實(shí)現(xiàn)這個(gè)功能的腳本應(yīng)該類(lèi)似于下面這樣:

    [root@linuxprobe ~]# vim example.sh
    #!/bin/bash
    #For Example BY linuxprobe.com 
    pwd 
    ls -al

Shell腳本文件的名稱(chēng)可以任意,但為了避免被誤以為是普通文件,建議將.sh后綴加上,以表示是一個(gè)腳本文件。在上面的這個(gè)example.sh腳本中實(shí)際上出現(xiàn)了三種不同的元素:第一行的腳本聲明(#!)用來(lái)告訴系統(tǒng)使用哪種Shell解釋器來(lái)執(zhí)行該腳本;第二行的注釋信息(#)是對(duì)腳本功能和某些命令的介紹信息,使得自己或他人在日后看到這個(gè)腳本內(nèi)容時(shí),可以快速知道該腳本的作用或一些警告信息;第三、四行的可執(zhí)行語(yǔ)句也就是我們平時(shí)執(zhí)行的Linux命令了。什么?!你們不相信這么簡(jiǎn)單就編寫(xiě)出來(lái)了一個(gè)腳本程序,那我們來(lái)執(zhí)行一下看看結(jié)果:

    [root@linuxprobe ~]# bash example.sh
    /root/Desktop
    total 8
    drwxr-xr-x. 2 root root 23 Jul 23 17:31 .
    dr-xr-x---. 14 root root 4096 Jul 23 17:31 ..
    -rwxr--r--. 1 root root 55 Jul 23 17:31 example.sh

除了上面用bash解釋器命令直接運(yùn)行Shell腳本文件外,第二種運(yùn)行腳本程序的方法是通過(guò)輸入完整路徑的方式來(lái)執(zhí)行。但默認(rèn)會(huì)因?yàn)闄?quán)限不足而提示報(bào)錯(cuò)信息,此時(shí)只需要為腳本文件增加執(zhí)行權(quán)限即可(詳見(jiàn)第5章)。初次學(xué)習(xí)Linux系統(tǒng)的讀者不用心急,等下一章學(xué)完用戶(hù)身份和權(quán)限后再來(lái)做這個(gè)實(shí)驗(yàn)也不遲:

    [root@linuxprobe ~]# ./example.sh
    bash: ./Example.sh: Permission denied
    [root@linuxprobe ~]# chmod u+x example.sh
    [root@linuxprobe ~]# ./example.sh
    /root/Desktop
    total 8
    drwxr-xr-x. 2 root root 23 Jul 23 17:31 .
    dr-xr-x---. 14 root root 4096 Jul 23 17:31 ..
    -rwxr--r--. 1 root root 55 Jul 23 17:31 example.sh
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)