用Shell Script 開發大型程式是什麼樣的體驗?

時間 2021-06-03 05:50:45

1樓:

本人遊戲運維。

工作中寫過大量的 shell 指令碼,不過都並不算大型程式,最長的估計有 2k 行左右。斗膽談下個人一些淺薄的看法:

shell 指令碼語法規範,建議參考 Google Style Guides-Shell Style Guide

使用正則要有度,有時候自己看回自己寫的正則都不知道是用來幹嘛的,囧rz

shell 指令碼預設全域性變數,函式裡是可以訪問到全域性變數的,很容易有汙染,一定記得在函式裡宣告的區域性變數要加 local

每個函式建議都根據不同的情況顯式寫出返回值,排查問題時會簡單點

如果要將 shell 指令碼轉成 http 服務,推薦使用 github 上的 shell2http 專案,特爽

2樓:裕用ID

沒用Shell做過特別大的程式,最大的指令碼就是乙個嵌入式板卡的控制台和一系列資料庫操控指令碼。都是因為作業系統不支援python所以要用shell的。

如果與python做對比的話,同樣是膠水語言。如果要完成大型指令碼程式,作為圖靈完備的python還是有絕對有優勢的。python各種資料型別比shell手工處理文字正則匹配要準確和方便。

錯誤捕抓和處理會靈活得多。更別提各種第三方庫是如此的厲害和給力。

再補充兩個我寫shell指令碼時候沒有辦法解決的問題吧,乙個是shell沒有特別方便的辦法進行網路程式設計。第二個是寫完指令碼之後要寫help和引數輸入的時候真的很煩人。shell指令碼最大的優勢就是基本上所有的linux都能使用。

不存在特別多的環境問題~

3樓:

看你如何定義大型。目前為止,我做過最大的shell專案,大約1萬行shell。

我的感覺是,跟其它語言開發一樣,你要定義自己的基礎資料結構,基礎模組,自底向上開發,這樣才能保證專案可控,在不考慮效率的情況下,開發速度還是很快的。

4樓:斯人

Make file算嗎,如果不算,那我沒寫過,但是可以想象得到,這個體驗一定是苦逼的自己為難自己讓自己更苦(S)逼(B)。

5樓:St.John

瀉藥。不好意思,還沒有用shell開發過大型程式,shell指令碼本來就是一種膠水語言。適合將shell命令列通過內建語法,有序地組裝起來。

如果寫大型程式,那絕對沒有python/perl/ruby等指令碼好用

用python做介面開發用什麼好

章佳輝 推薦pyqt吧,元件比較豐富,介面也好看一些,入門的話開發難度上可能會比tkinter,wxpython大一些,不過差異沒那麼大,網上資料也很多,有的還可以參考c 版本的解決方案,基本上拿它做還是比較容易的,不過商用要付錢是真的,但是你非商業用途無所謂,等真的商用了也未必會在乎這幾千塊錢 三...

visual studio本身是用什麼開發的?

Hush 好多人問哪些地方用了C 哪些地方用了C 其實VS是乙個pluggable的軟體,分成shell和上層的pluggin兩大部分。基本上所有可見的元件比如solution explorer,text editor,test explorer之類的都是外掛程式。現在用的VS版本是和.net一起開...

web開發用mac還是windows?

ZHYan 純粹的開發的話,無關緊要,主要還是和個人使用的軟體有關,熟悉哪個用哪個。如果需要測試結果的話MAC Win Linux都需要。 已重置 題外話,前些年npm有個bug是不能在sudo下跑,所以當時Linux下預設的全域性的路徑是 npm 好死不死macOS裡很多人把 urs local ...