Linux 初學者編程資源

Linux.org 主頁

Linux 是在許多平台上使用的開源操作系統 (OS)。 它在服務器和超級計算機上很普遍。 然而, Linux 用途廣泛,可以在台式機、筆記本電腦、嵌入式設備、移動設備等設備上運行。 

該操作系統由 Linus Torvalds 首次推出,自 1991 年以來一直存在。它是其他系統的免費替代品,如 Unix的MINIX. 今天有很多不同的口味 Linux 這些年來出現的。 這些包括 紅帽企業 Linux (RHEL), Debian, Ubuntu, Gentoo的,還有更多的。

理解 Linux

當你聽到這個詞 Linux,它可能會讓人聯想到一個長頭髮的怪胎和一件 T 卹,上面寫著:“Linux 是我的宗教。” 好吧,如果你想成為一名程序員或計算機科學家,那可能就是你。

背後沒有單一的創造者或設計師 Linux 今天。 相反,它是一個開源操作系統,由不同的程序員隨著時間的推移而修改和發布。 這個生態系統與微軟嚴格控制的 Windows 操作系統形成鮮明對比。

的基本概念 Linux 程序設計

的所有分佈 Linux 圍繞內核旋轉。 內核是操作系統的核心,就像道路的基礎。 然而,雖然內核很重要,但您需要額外的軟件才能使其有用。 該軟件被稱為“覆蓋”。

Linux 內核包含一組命令和程序,可讓您從命令行控制設備。 的一些例子 Linux 命令包括:

  • 打壞 - 大多數的默認外殼(命令界面) Linux 分佈。
  • grep的 - 用於在文本文件中搜索模式的實用程序。
  • 須藤 – 前言操作系統應以管理員身份運行的命令。

橋樑 Linux 這些年來,命令沒有太大變化。 雖然在不同的地方存在一些變化 Linux 分佈,大多數在概念上是相似的。 這 Linux 社區在包容性方面也享有盛譽,因此初學者很容易找到其他可以幫助他們學習編碼的人。

腳本在 Linux

學習編寫腳本 Linux 對於任何系統管理員、開發人員或軟件工程師來說都是必不可少的。 這是自動化重複性任務並使您的生活更輕鬆的唯一方法。 但是,雖然您可以使用 Linux 腳本來自動執行任務,必須了解它們都沒有實際的功能強大 編程 語言。

Linux shell 是一個命令行解釋器,它使您能夠連續運行一個或多個命令。 它就像一種基本的編程語言,允許您創建 shell 腳本。 

Shell 腳本是包含命令列表的純文本文件。 您可以在任何文本編輯器中編寫這些腳本,例如 VIM or 納米, 然後通過將文件名作為參數傳遞給 shell 來執行它們。 當您運行腳本時,它將按順序執行每一行,就好像您在命令提示符下輸入了這些行一樣。

這裡有一些初學者的基礎知識 Linux 命令和腳本;

  • Hackr.io 提供了前 25 名的列表 基本 Linux 命令 適合初學者。
  • 學習殼牌 提供簡單 Linux shell 教程,甚至還有一個界面供您測試您掌握的技能。
  • 有關 shell 腳本的更全面的會議,請加入 學習 Bash 腳本 領英課程。

為什麼選擇 Linux 編程?

你可能想知道學習的意義是什麼 Linux 編程是。 畢竟,您可以使用許多其他應用程序來構建您的應用程序。 第一點要注意的是 Linux 是免費的開源軟件。 這使得任何人都可以免費獲得它。

除此之外,其特點 Linux 其應用使其在特定行業或用例中佔據重要空間。

Linux 支持多種不同的語言,因此如果您已經熟悉一種語言但想要額外的挑戰,那麼切換可能是正確的選擇。 其中一些語言具有相似的根源,因此進行轉換可能相對輕鬆。

此外,現在有一些工具,如 Docker 容器,開發人員可以使用他們想要的任何語言編寫代碼,而不管系統本身是否支持它。

備註: Linux 編程可能意味著不同的東西。 例如,您可以選擇在 Linux 內核,創建內核模塊。,或構建 Linux基於應用程序。

Linux 內核開發

Linux 內核是核心組件 Linux 處理系統所有任務的操作系統。 它還處理輸入/輸出 (I/O) 請求、與硬盤驅動器和網卡等設備的通信、文件系統訪問、內存管理、進程調度等。

內核充當計算機上運行的應用程序和它們用來完成工作的硬件之間的中介。 它為這些不同部分之間的通信提供了一個接口,使它們能夠順利地協同工作。

發展 Linux 內核模塊

內核模塊是一種可以在運行時加載和卸載的內核擴展。 它們由執行特定任務的自包含代碼片段組成,例如訪問硬件設備或實現網絡協議。

一般來說,有兩類 Linux 內核模塊:靜態編譯和動態鏈接。 

在前一種情況下,模塊在從源代碼構建時被編譯到內核映像中; 在後一種情況下(與大多數應用程序一樣),僅包含一個目標文件作為內核構建過程的一部分。 但是,您必須針對給定版本的 Linux's 應用程序二進制接口 (ABI) 正常工作。

開發應用程序 Linux

Linux 由於其靈活性和可擴展性,它是開發應用程序的絕佳平台。 它適用於多種平台,例如台式機、筆記本電腦和服務器。 因此,如果您有一個想法或正在研究需要跨所有系統的可移植性,這是您最好的選擇。

Linux 在安全性和穩定性方面也是開發應用程序的絕佳平台。 它帶有高質量的開源軟件 (OSS),確保在您的程序上運行時很少有錯誤潛入您的程序 Linux基於 Android 手機和平板電腦或 Raspberry Pi 板的系統。

在的職業 Linux 程序設計 

最多分享 託管服務 由...提供動力 Linux 服務器– 包含 TMD Hosting.

由於它的受歡迎程度,有很多工作在 Linux 編程。 在某些行業和應用中,它是事實上的標準。 例如,大多數服務器將運行在 Linux. 然而,你知道嗎,即使是移動設備也高度依賴 Linux 作為基礎?

Linux 程序員在航空航天和國防、汽車、政府、金融、醫療保健等許多利基行業也至關重要。

如果你正在考慮一份工作 Linux 編程,這裡有一些可用的站點;

確實 – 該工作聚合網站涵蓋全球範圍內的安置職位。 您可以在許多公司找到合同、自由職業或全職職位。 你會找到專家 Linux 像內核開發人員、JNet 程序員、DevOps 工程師,甚至 Linux 服務器工程師。

骰子 – 該招聘平台偏向IT行業,職位多 Linux 程序員。 您可以加入正在尋找的公司 Linux 軟件工程師,嵌入式 Linux 開發人員、Python/Perl 程序員等。

Linux 粉底 – 鐵桿 Linux 粉絲可以嘗試在 Linux 基礎。 他們一直在尋找有才華的人,目前需要首席軟件工程師、數據工程師、安全研究人員等。 還有相當數量的非編程角色可用於 Linux 愛好者。

Linux 及 Linux 編程資源

有許多資源可供您獲得幫助或了解更多信息 Linux,各種兼容的編程語言,甚至與社區成員討論問題。 這些可以涵蓋廣泛的範圍;

下載 Linux 分佈

Linux 文檔和新聞

  • Linux 文檔項目 致力於為 GNU 操作系統提供高質量的文檔。 它旨在幫助用戶在 GNU/Linux 或其任何變體(例如 BSD)。 
  • Linux 每週新聞 (LWN) 是一份周刊,重點關注與自由軟件項目相關的主題,例如內核、實用程序、設備驅動程序等。 它涵蓋了構建和維護的所有方面 Linux 從開發人員的角度來看項目。
  • 9to5 Linux 是一個相對較新的博客 Linux. 它帶來了一切的最新更新 Linux-從發行更新到相關 Linux- 特定工具。

Linux 社區和論壇

正式 Linux & Linux 編程課程

  • Udemy ——在這裡,你會發現很多 Linux- 特定課程,包括 Python、Perl 等多種編程語言。 課程採用視頻格式,可按需提供,包括作業和結業證書。
  • Coursera – 與 Udemy 一樣,Coursera 為各種 Linux 弟子。 你可以從中學到一切 Linux 基本面 Linux 私有云管理。
  • EDX – 也許是最正式的學習選擇,edX 將來自 160 多所成員大學的課程整合到一個平台上。 著名的名字包括麻省理工學院、哈佛大學和波士頓大學。 您可以在 edX 上找到從專業證書到碩士學位的所有內容。

結論

編程是一種超越平台的技能,所以你對編程了解的越多越好。 當今使用的許多最流行的編程語言都用於 Linux - 其中許多是開源的。

當您可以將其置於上下文中並查看它解決了哪些問題時,學習編程的基礎知識通常更易於管理。 上面的許多資源都包括有關使用新獲得的知識的教程。

學習任何編程語言的最好方法是自己動手。 一開始你會犯錯誤,但隨著時間和練習,你的技能會提高。

閱讀更多

作者照片

文章 Timothy Shim