linux编写运行shell程序,Linux的Shell编程运行Shell程序的方法有哪些呢?
用戶可以用任何編輯程序來(lái)編寫(xiě)Shell程序。因?yàn)镾hell程序是解釋執(zhí)行的,所以不需要編譯成目的程序。按照Shell編程的慣例,以 bash為例,程序的第一行一般為“#!/bin/bash”,其中 # 表示該行是注釋,嘆號(hào) !告訴Shell運(yùn)行嘆號(hào)之后的命令并用文檔的其余部分作為輸入,也就是運(yùn)行/bin/bash并讓/bin/bash去執(zhí)行Shell程序的內(nèi)容。
執(zhí)行Shell程序的方法有3種。
1.sh Shell程序文件名
這種方法的命令格式為:
bash Shell程序文件名
這實(shí)際上是調(diào)用一個(gè)新的bash命令解釋程序,而把Shell程序文件名作為參數(shù)傳遞給它。新啟動(dòng)的Shell將去讀指定的文件,可執(zhí)行文件中列出的命令,當(dāng)所有的命令都執(zhí)行完后結(jié)束。
該方法的優(yōu)點(diǎn)是可以利用Shell調(diào)試功能。
2.sh
格式為:
bash< Shell程序名
這種方式就是利用輸入重定向,使Shell命令解釋程序的輸入取自指定的程序文件。
3.用chmod命令使Shell程序成為可執(zhí)行的
一個(gè)文件能否運(yùn)行取決于該文檔的內(nèi)容本身可執(zhí)行且該文件具有執(zhí)行權(quán)。
對(duì)于Shell程序,當(dāng)用編輯器生成一個(gè)文件時(shí),系統(tǒng)賦予的許可權(quán)都是644(rw-r-r--),因此,當(dāng)用戶需要運(yùn)行這個(gè)文件時(shí),只需要直接鍵入文件名即可。
在這3種運(yùn)行Shell程序的方法中,最好按下面的方式選擇:當(dāng)剛創(chuàng)建一個(gè)Shell程序,對(duì)它的正確性還沒(méi)有把握時(shí),應(yīng)當(dāng)使用第一種方式進(jìn)行調(diào)試。
當(dāng)一個(gè)Shell程序已經(jīng)調(diào)試好時(shí),應(yīng)使用第三種方式把它固定下來(lái),以后只要鍵入相應(yīng)的文件名即可,并可被另一個(gè)程序所調(diào)用。
4.bash程序的調(diào)試
在編程過(guò)程中難免會(huì)出錯(cuò),有的時(shí)候,調(diào)試程序比編寫(xiě)程序花費(fèi)的時(shí)間還要多,Shell程序同樣如此。
Shell程序的調(diào)試主要是利用bash命令解釋程序的選擇項(xiàng)。調(diào)用bash的形式是:
bash -選擇項(xiàng)Shell程序文件名
幾個(gè)常用的選擇項(xiàng)是:
-e 如果一個(gè)命令失敗就立即退出。
-n 讀入命令但是不執(zhí)行它們。
-u 置換時(shí)把未設(shè)置的變量看做出錯(cuò)。
-v 當(dāng)讀入Shell輸入行時(shí)把它們顯示出來(lái)。
-x 執(zhí)行命令時(shí)把命令和它們的參數(shù)顯示出來(lái)。
全部
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的linux编写运行shell程序,Linux的Shell编程运行Shell程序的方法有哪些呢?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 微软“更名部”出手:企业社交网络服务 Y
- 下一篇: nginx在linux自动启动脚本,ng