shell指令碼編程學習筆記(1)

來源:互聯網
上載者:User

標籤:編程   指令碼   shell   指令碼程式設計語言   unix   

在linux上編程,離不開shell,計劃好好看看shell編程,並在這裡做些筆記以供有相同興趣的人分享,主要參考《shell指令碼學習指南》。


學習shell指令碼編程之前,需要瞭解指令碼程式設計語言和編譯型語言的概念。


一般很多中型、大型的程式是用編譯型語言寫成的,比如C、C++、Java等。這類程式從原始碼編譯成目標代碼,直接通過電腦執行。編譯型語言執行效率比較高,大多運作於底層,處理的是位元組、整數、浮點數等機器層級的對象,因此實現一個具體的功能,比如“將一個目錄裡的所有檔案複製到另外一個目錄中”,會比較複雜。


指令碼程式設計語言相對前者來說比較進階,主要表現在能更加簡潔的實現一些複雜的功能,因此開發的周期比較短,但是啟動並執行效率低,通常用於小型的程式。比如用作一些測試方法等。


在我的理解中,指令碼程式就是一系列命令的組合。

舉個例子。假設我想知道現在系統上有多少人登入。可以輸入 who 命令得到登入的資訊,利用wc指令可以計算數量。因此輸入 who | wc -l 即可得到當前登入的使用者數量。將該命令寫入一個檔案,並將該檔案的許可權改為可執行,那麼就能執行該檔案,效果和直接輸入who | wc -l一樣。這個檔案就是shell指令碼。這個過程就是指令碼編程。

所以,指令碼編程的過程就是:輸入一串命令,實現預期的功能,將這些命令寫入檔案,就是一個指令碼。


這裡有兩個問題:

第一,為什麼要寫成這樣一個指令檔,而不是直接輸入一些命令就行了?

事實上,shell指令碼通常用於一些日常工作,就是每天都要做的,重複很多次的,寫成指令碼之後,每次只需要運行這個程式就可以了,方便很多。


第二,指令碼程式設計語言很多種,為什麼用shell?

因為shell是unix系統中最重要、最廣泛的指令碼,所有的unix系統都會有shell,並且其功能很完備,當然要用它。更關鍵的是,它很酷炫!!


shell指令碼編程學習筆記(1)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.