本文以創用 CC 姓名標示-非商業性-相同方式分享 4.0 國際授權釋出
讀者您好
前一期介紹了 macOS 下好用的命令列工具,這篇文章介紹了 Linux/Unix 下的實用命令列工具,讀者可以藉由這些工具獲取有關系統的資訊和管理資源。這些工具可以用於跟踪執行中的程式、檔案、記憶體和磁碟使用情況。
🔹Mergiraf
Mergiraf 是一套專爲 Git 設計的程式碼衝突合併工具,由於 Mergiraf 可以將程式語言解析爲語法樹,便能夠精確地處理程式碼衝突問題。目前支援 Java、Rust、Go、JavaScript 以及 C/C++ 等主流程式語言,開發者也可以自行開發外掛,讓 Mergiraf 解析不同的程式語言。
🔹litecli
litecli 是一個爲 SQLite 設計的命令列工具,它具有命令自動補完以及語法顯示功能,讓開發者更輕鬆操作 SQLite 資料庫。
🔹go-safeweb
go-safeweb
是一組專為在 Go 中撰寫安全 HTTP 伺服器的程式庫,提供預設的安全機制來防範 XSS、XSRF 等漏洞,同時保有 Go 標準庫的兼容性。
🔸大型科技公司專案推動的核心技巧
在大型科技公司推動專案並不簡單,Sean Goedecke 分享了他過去十年在這方面的經驗。他指出,專案的成功取決於是否有人專注負責推動,而不僅僅是完成程式碼或解決問題。專案不會自動推出,必須有人努力將它完成,並將推動專案當成首要任務。
Goedecke 認為,理解「推出」的真正含義很重要。推出專案不只是把功能上線或完成部署,而是確保公司內的主要決策者認可這個專案。這意味著專案負責人要清楚公司對專案的目標,並且透過有效溝通,讓領導層對專案進度和結果感到滿意,進而贏得信任。
專案領導者還需要預見可能發生的問題,並準備好備案來應對。這包括提前進行測試和部署,靈活調整計劃,並與其他團隊協調合作。Goodedecke 建議在專案接近推出階段時,減少執行細節工作,集中精力處理突發狀況,並持續檢視是否能隨時推出專案,以確保專案順利完成。
🔸Shell 的發展軌跡
殼層(Shell)在電腦科學中指的是提供使用者操作介面的軟體,它位於作業系統核心與使用者之間,負責將使用者輸入的指令轉換為對作業系統 API 的呼叫,以完成所需的工作。在這篇文章中,作者介紹了 Linux/Unix 歷史上出現過的各種 Shell,它們各自具備不同的功能和設計理念,每位使用者都有自己偏好的選擇。
第一個 Shell 由貝爾實驗室的 Unix 發明者 Ken Thompson 在 1971 年為 UNIX 開發,僅使用 900 行 C 程式碼實現了至今仍在使用的功能:重導和管線。隨後,Bourne shell 和 Csh 增加了腳本語言和命令列參數傳遞等功能,開發者藉由這些特性能完成更多複雜的任務。
許多早期 Shell 提出的概念和想法,如今仍然在軟體中保留,顯示出早期開發者的洞見。在這個不斷變化的行業中,雖然許多事物的外觀有所改變,其核心設計依然保持不變。
以上就是本期的內容,喜歡的話請給❤️,分享或轉寄本電子報給有興趣的朋友。如果您有想要介紹的開源專案,也請來信與我們分享,或是在 X (前 Twitter) 留言給我們,感謝!