Linux筆記:Linux與Windows

来源:https://www.cnblogs.com/guyuyun/archive/2020/04/12/12683450.html
-Advertisement-
Play Games

其實Linux和Windows的差別還是很大的,甚至可以說沒有接觸過Linux的人是完全不懂怎麼使用這種操作系統的,至少我自己的感覺是這樣的。在學習Linux之後,我在使用這兩種系統上最直觀的感受就是Windows就是用於個人PC的,簡單明瞭的圖形界面讓即使不懂電腦原理的人也能輕易上手並很快熟練使 ...


其實Linux和Windows的差別還是很大的,甚至沒有接觸過Linux的人可能完全不懂怎麼使用這種操作系統的,至少我自己的感覺是這樣的。在學習Linux之後,我在使用這兩種系統上最直觀的感受就是Windows就是用於個人PC的,簡單明瞭的圖形界面讓即使不懂電腦原理的人也能輕易上手並很快熟練使用,所以Windows面向的使用者幾乎是所有人。但是Linux在電腦上的使用則是用於伺服器端的系統,純英文的字元操作界面別說普通人,就是大多寫代碼的程式員都對它望而卻步,所以Linux的使用者都要求擁有一定的專業知識,就算是網上銷售的Linux操作系統的個人PC,我也看到商家有特別說明,使用者需要有一定的專業知識。

所以本文對於Linux的簡介,特別是像我這樣沒接觸過Linux的初學者而言,還是通過Windows和Linux的對比來介紹,更能直觀的感受Linux本身的特別之處。

 

Linux版本

這裡說的版本,不是像win7和win10這樣同一軟體或系統的更新迭代版本,而是指Ubuntu、CentOS等不同版本的Linux操作系統。對於初學者而言,會發現Ubuntu、CentOS等都是Linux操作系統,那可能就會有疑問,該選擇哪一種操作系統來進行學習呢,它們有什麼不同嗎,學習了其中一種之後,如果以後需要用到另一種Linux操作系統時是不是又得去重頭學一遍呢。其實完全不用擔心,只需要選擇一種去學習即可,而且對於初學者而言,最好是選擇與教材或者教學視頻中相同的系統。

不同於Windows,Linux之所以出現各種版本的操作系統,是因為Linux系統本質上只有一個系統內核,而這個Linux系統內核是開源的,各種版本的Linux操作系統只是在這個內核上進行了自己的一層包裝,包括各種應用程式,然後發行出來就變成了擁有各自特色的Linux操作系統,就像Android,不同的廠商可以根據自己的需要定製屬於自己的Android系統,但它們本質上也都還是Android系統,對於初學者而言,學習的其實是Linux內核,而不是某一種特殊的操作系統,不同的Linux操作系統,它們的Linux內核都是一樣的,所以完全不用擔心選擇哪一種操作系統的問題,初學的時候,只需要跟著教材或者教學視頻中指定的操作系統就好了,在生活或工作中實際用到的時候,可以再去研究下特定操作系統它自己的一些特殊用法。

 

Linux開源

對於開源軟體的理解,就我自己而言,以前對開源存在一些誤解,或者說認識不全面和理解不到位,比如認為開源軟體沒有正式商用軟體靠譜,會比商用軟體存在更多的bug,會比商用軟體更加不穩定等等。但其實不然,甚至完全理解錯了,就像Linux系統在安全性和穩定性上,嚴格來說,是要大大地高於Windows的。總體來講,開源軟體有以下一些優點:

  • 價格便宜甚至免費:開源軟體其實並不意味著它是免費的,但是大多都非常便宜,甚至是免費的。
  • 源代碼開放:源代碼開放,不僅僅可以讓使用者可以根據自身需要定製自己的軟體,更重要的是,這意味著它是透明的,它的bug會更容易被髮現,從而它的安全性和穩定性也會更高。
  • 自由的研發和傳播:有了源代碼自然就可以大家一起研發併發布成果,但是一般來講,在開源的軟體上進行的二次開發出來的產品,在進行傳播時,它也應該是開源的。

 

Linux應用

Windows的應用,它的定位其實就是個人PC,特別是它的圖形操作界面,可以讓完全不同電腦原理的普通人也可以輕鬆上手。

但是Linux的應用除了在企業伺服器的領域外,Android系統的核心其實也是Linux,並且Android系統除了在手機平板等移動終端上的應用外,還大量運用在智能汽車家電等嵌入式領域中。

 

Linux磁碟

Windows上對於磁碟的感受就是一目瞭然,C盤、D盤等只要打開資源管理器就可以清楚看到,想要使用哪個磁碟,用滑鼠點擊進去即可,哪怕是插入U盤、光碟等外部設備,Windows也是可以自動識別,使用者什麼都不需要做,就可以在界面上清楚的展示出來並直接使用。

但是Linux中沒有盤符的說法,更沒有什麼C盤和D盤了,Linux的整個文件系統就像是樹形結構的目錄,根目錄“/”就是最頂端,然後是一級目錄如“/etc”、“/root”等,然後就是二級目錄如“/usr/bin”,以此類推,給人的直觀感受就是它沒有分C盤、D盤,而是放在了同一個較大的“盤”下麵。Linux還有一個和Windows非常不同的地方就是,所有的外部設備,包括磁碟、U盤、光碟等在連接上電腦後都需要專業人員手動的掛載上去才能使用。

 

Linux文件
Windows中的文件通常由文件名和尾碼名組成,尾碼名代表了此文件的文件類型,如“.txt”、“.exe”等,根據尾碼名系統才能知道應該使用什麼應用程式打開此文件,所以對於文件的重命名,Windows中通常只是修改文件名的部分,很少修改尾碼名的部分,因為一旦修改錯了,可能導致文件不能識別,從而導致文件不可用。
在Linux中,有兩點是跟Windows差別很大的,一是Linux中所有的設備、目錄以及文件本身都是用文件來表示,對於設備,Windows中可以理解為設備就是設備,你可以在電腦的管理功能中清楚地看到有哪些設備,但是Linux中設備是用文件表示,比如新插入的U盤,就會有一個設備文件與之對應,訪問U盤也是通過這個設備文件與之映射關聯,而對於目錄,其本質雖然也是文件,但操作目錄的方式還是和Windows差不多,並不是去操作對應的目錄文件。第二點就是文件的命名和類型,Linux中的文件名是沒有尾碼名的,命名時,可以用“abc”表示一個文件,也可以使用“abc.txt”表示一個文件,但是需要註意的是,系統並不是通過文件名來識別文件類型的,之所以在Linux中可以看到許多加了尾碼名的文件,那是方便管理人員識別文件類型的,也就是說“abc.txt”整個字元串代表文件名,其中的“.txt”也是文件名的一部分,而不是代表文件類型,Linux中是通過文件的許可權來識別文件類型的,如“rwxr-xr-x”中r表示具有讀許可權,w表示具有寫許可權,x表示具有執行許可權,橫杠-表示沒有此位置表示的許可權,Linux中許可權的理解需要更深入的學習,這裡只是舉個例子,並沒有詳細說明。

 

其他

Linux中是嚴格區分大小寫的,包括命令、目錄名、文件名等都是如此。

windows下的程式是不能直接在Linux中安裝和運行的。

Linux作為遠程伺服器時,通常不允許關機,最多只能進行重啟,並且重啟之前也需要先把相應的服務給關掉。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 正在開會,突然線上站點線程數破千。然後一群人現場dump分析。 先看一眼線程運行狀態 !eeversion 發現CPU占用並不高,19%,937條線程正在運行。 看看他們都在乾什麼。 ~* e !clrstack 發現大片內容相似的,並且最後一行是System.Threading.Monitor.E ...
  • 最近項目中,一些html內容需要顯示在ng-repeat內。 1,引用angular-sanitize.js 2,寫一個過濾器 最後是在html中使用過濾器 存儲於資料庫表內的html內容: 呈現效果: ...
  • 之前的舊版本為許多客戶服務了好多年,但隨著技術變更與發展,舊版已難以再挑起大梁。因本人一直都扎根在網教行業,對實現網路考試與培訓有著深刻的認識與理解,故打算用當前主流技術全新構建一套新的版本。新版本採用Net Core 2(目前已升級為Net Core 3)c#語言編寫(新版名為“麥荻網教系統”),... ...
  • System.Drawing is not supported on this platform. ...
  • 一、引言 fanout類型的Exchange,路由規則非常簡單:它會把所有發送到該Exchange的消息,路由到所有與它綁定的Queue中。假設有一個聊天室,各個客戶端都訂閱在同一fanout exchange type,那每個客戶端發送出來的消息,所有的客戶端都能收到,因為大家都訂閱了。此時,只需 ...
  • 在上次的文章中簡單介紹了 [Reface.NPI] 中的功能。 本期,將對這方法名稱解析規則進行詳細的解釋和說明, 以便開發者可以完整的使用 [Reface.NPI] 中的各種功能。 基本規則 方法名稱以 Insert , Delete , Select , Update 開頭 方法名以數個單詞構成 ...
  • 前言 上一篇文章介紹了ABP的Web API,本文在繼續介紹ABP的其他內容。 在ABP中,WEBAPI是一個值得用的東西。但其他東西,就不一定是那麼好用了。 因為越深入的學習ABP,你就越會發現,它自身有著非常強的設計約束,而而微軟的框架已經有一定的約束了,再使用一套附加約束,顯然會更辛苦。 下麵 ...
  • 在做劍指offer的題目時,發現每次需要用到樹做為參數來測試自己寫的方法時,都很是痛苦。於是乎就萌生了寫一個利用數組作為參數生成樹的方法。簡單測試了下,沒什麼毛病。在這裡貼出來,如果以後發現有bug了會持續在後面更新,也歡迎大家指出其中的不足。 public class TreeNode { pub ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...