Linux基礎入門---學習心得

来源:https://www.cnblogs.com/Aa123456780/archive/2018/09/27/9711603.html
-Advertisement-
Play Games

之前一直以為Linux和Windows差不多,但是學習了Linux基礎入門之後才發現兩種操作系統之間差距非常大。 Linux只是在硬體之上的內核和系統調用,就連我們在Windows里習以為常的圖形界面都是Linux上的軟體。在使用Linux的時候,我們都習慣於使用終端和命令行進行操作,而不是像Win ...


之前一直以為Linux和Windows差不多,但是學習了Linux基礎入門之後才發現兩種操作系統之間差距非常大。

  Linux只是在硬體之上的內核和系統調用,就連我們在Windows里習以為常的圖形界面都是Linux上的軟體。在使用Linux的時候,我們都習慣於使用終端和命令行進行操作,而不是像Windows那樣的圖形界面里的滑鼠鍵盤的共同操作。物理機系統可通過[Ctrl]+[Alt]+[F1]~[F6]切換6個純命令行界面的終端,通過[Ctrl]+[Alt]+[F7]從終端切換回圖形界面。而且學習之後我才知道,Linux裡面一切皆文件,相對於Windows里的文件尾碼名區分文件類型,Linux不通過尾碼名區分文件類型,可以通過file命令查看文件類型。
大數據Linux資料分享群119599574

  在使用Linux的時候,我們不直接和系統打交道,而是通過Shell(命令解析器)。Shell就像一個殼隱藏了操作系統的底層操作。通俗來講,Shell就是可以接受用戶輸入命令的程式。在UNIX/Linux中比較流行的常見的Shell有bash,zsh,ksh,csh等等,Ubuntu終端預設使用的是bash,預設的桌面環境是 GNOME或者Unity(基於 GNOME)。

  在Linux系統中有很多十分方便的快捷命令。

  • Tab:可以用來補全命令、目錄、或者命令參數,連續按兩次還可顯示所有能匹配到的結果;

  • [Ctrl+C]:用來終止當前程式並且不退出終端;

  • [Ctrl+d]:鍵盤輸入結束或者退出終端;

  • [Ctrl+s]:暫定當前程式,暫停後按下任意鍵恢復運行;

  • [Ctrl+z]:將當前程式放到後臺運行,恢復到前臺命令為fg;

  • [Ctrl+a]:將游標移至行頭,相當於home,[Ctrl+e]相當於[end];

  • [Ctrl+k]:刪除從游標所在位置到行末;

  • [Alt+backspace]:向前刪除一個單詞;

  • [shift+pgup]:將終端顯示向上滾動,[shift+pgdn]向下滾動。

  在Linux中,通配符主要是“*”和“?”,可用來對字元串進行模糊匹配,終端里的通配符由Shell完成。

  Linux中還有一部分特別重要的命令:

  • man命令:man命令是Linux中一個十分重要的幫助指令,內容包括電腦程式(庫和系統的調用),正式的標準和慣例,抽象的概念,通過執行man命令調用手冊頁。man命令手冊比較重要的是前三個:1.一般命令;2.系統調用;3.庫函數,涵蓋了C標準函數庫。man命令如果加上數字參數,可以指定從哪本手冊中搜索幫助。數據Linux資料分享群119599574
  •  
  • ls命令:用於顯示當前目錄下的文件,可以通參數[-a]顯示隱藏文件(Linux下隱藏文件皆以‘.’開頭)。
  •  
  • cd命令:Linux下一切皆文件,因此在終端中[cd]命令就顯得尤為重要。這個命令可以通過絕對路徑或者相對路徑進入到你想進去的目錄中。
  •  
  • cp命令:用於終端中文件或目錄的複製操作。
  •  
  • rm命令:用於終端中文件或目錄的刪除操作。
  •  
  • cat命令:用於正序列印文件內容到終端,與之相反的tac命令倒序列印問價內容到終端。
  •  
  • declare命令:用於聲名一個變數,用‘=’號賦值,用echo和$命令讀取變數的值。

  Shell中運行的大部分命令都將以審理了的子進程的方式運行。環境變數有3種:1.當前Shell進程私有用戶自定義變數,只在當前Shell中有效;2.Shell本身內建的變數;3.從自定義變數導出的環境變數。

以下是部分實驗的截圖:  
banner截圖

figlet截圖

給用戶添加用戶組並通過sudo命令獲得root許可權

黑客帝國

實驗過程中遇到的問題以及解決:

1、運行hello_shell.sh腳本文件時候報錯,原來是for之後少了一個空格,之後才知道Linux腳本文件裡面的空格不像C語言裡面的一樣能隨便增刪。

2、使用mv命令移動兩個文件時,其中一個文件名輸錯,再次執行移動命令時,說另一個文件不存在,之後發現另一個文件已經移動到目的目錄中。從而知道了使用mv命令移動兩個文件時,其中一個文件名輸錯,不會影響其他文件的移動。


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

-Advertisement-
Play Games
更多相關文章
  • 1、首先先創建一個文件夾存放資料庫目錄:d:cs 用戶及密碼為cs 2、創建表空間: create tablespace csdatafile 'O:\cs\cs.dbf' size 50M autoextend on next 10M maxsize unlimited logging exten ...
  • 最近內部的 mysql 資料庫發生了一件奇怪的事,其中有一個表 users625 突然出現問題, 所有對它的操作都報錯誤 。 它還顯示在列表裡,在 mysql 數據目錄中也可以找到對應的表文件,也沒有 進行過刪除操作,突然出現這樣的錯誤非常奇怪。 <! more 內部運行環境: | 名稱 | 值 | ...
  • 報錯現象: 從mysql5.5資料庫導出的數據結構放到mysql5.7.10 報錯create_time timestamp NOT NULL DEFAULT ‘0000-00-00 00:00:00’ 則會出現以下的異常: Invalid default value for ‘create_tim ...
  • 工作中遇到的問題,小結一下 查詢今日添加的記錄: select * from [表名] where datediff(day,CONVERT(VARCHAR(20),DATEADD(SECOND,[時間欄位],'1970-01-01 00:00:00'),120),getdate())=0 這裡的 ...
  • 創建主XML索引註意事項 若要創建主 XML 索引,請使用 CREATE INDEX (Transact-SQL) Transact-SQL DDL 語句。 XML 索引不完全支持可用於非 XML 索引的所有選項。 創建 XML 索引時註意下列事項: 若要創建主 XML 索引,含有被索引的 XML ...
  • Hadoop版本演變 Apache Hadoop的四大分支構成了三個系列的Hadoop版本: 0.20.X系列 主要有兩個特征:Append與Security 0.21.0/0.22.X系列 整個Hadoop項目被分割成三個獨立的模塊: 1.Common模塊 2.HDFS模塊 3.Mapreduce ...
  • mysql 正常運行的時候,[查看 table 的結構][show create table doc]並不是困難的事。 但是有時 mysql 發生故障,這種方法便不再可行。 當遇到故障,通常使用新的 mysql 實例來恢復當前的數據。 建表是非常重要的步驟,我們必須有其它的方法來尋找 table 的 ...
  • 在使用lepus3.7監控MySQL資料庫的時候,碰到了以下幾個問題,本博客給出了這些問題產生的原因,以及相應的解決辦法。 1. 問題1:php頁面無法連接資料庫 直接使用php程式執行php文件,可以連接mysql,但是在httpd中同樣的php頁面無法連接mysql。 lepus的web程式(P ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...