[英]Shell scripting vs programming language
對於我必須完成的許多任務,我發現自己必須在使用Linux中的Shell腳本或Java或Groovy等編程語言之間做出選擇。 有沒有人有關於如何選擇一個而不是另一個的經驗?為什么?
Shell腳本非常適合簡潔的文件系統操作,並通過管道編寫過濾器和命令行工具中現有功能的組合。
當您的需求更大 - 無論是功能性,穩健性,性能,效率等 - 那么您可以轉向功能更全面的語言。 他們傾向於提供以下組合:
@Tony提供了一個優秀的利弊列表。 我還要添加一個更通用的點 - shell腳本,因為它們非常方便,冒着顯示“沒有比臨時解決方案更持久”的特性,當有人需要使用它時,所有隨之而來的維護問題。
Shell腳本是在系統上使用“粘合劑”的最直觀方式。 但是,它沒有一些有用的概念,比如繼承和模塊化,像Python這樣的語言(它也非常習慣於“粘合”系統)。
沒錯,語言的使用主要取決於你要做的任務。 對於我工作過的大多數情況,shell腳本運行良好,雖然我使用了大量的Python來完成系統相關的任務。 在這種情況下,我不認為Java會成為替代品。 可能Groovy會是,但不是Java(我的意思是Java作為一種語言,而不是Java作為平台。)
在系統管理員視圖中,我認為Python和Ruby是很棒的語言。 不僅因為動態類型和不需要編譯,而且因為像Fabric , Capistrano , Puppet等工具使得系統管理員的生活變得更加容易:-)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.