Linux命令簡介

1 Linux系統的命令概述

  • 在 Linux 操作系統中,凡是在字符操作界面中輸入能夠完成特定操作和任務的字符串都可以稱為命令。
  • 嚴格來說,命令通常只代表實現某一類功能的指令或程序的名稱。

1.1 Shell

  • Linux 命令的執行必須依賴于 Shell 命令解釋器。
  • Shell 實際上是在 Linux 操作系統中運行的一種特殊程序,它位于操作系統內核與用戶之間,負責接收用戶輸入的命令并進行解釋,將需要執行的操作傳遞給系統內核執行,Shell 在用戶和內核之間充當了“翻譯官”的角色。

在這里插入圖片描述

  • 當用戶登錄到 Linux 系統時,會自動加載一個 Shell 程序,以便給用戶提供可以輸入命令的操作系統。Bash 是 Linux 操作系統中默認使用的 Shell 程序,文件位于/bin/bash。

1.2 Linux命令分類

根據 Linux 命令與 Shell 程序的關系,Linux 命令一般分為以下兩種類型:

  • 內部命令
  • 外部命令
內部命令外部命令
集成于Shell解釋器程序內部的一些特殊指令,也稱為內建(Built-in)指令Linux系統中能夠完成特定功能的腳本或二進制程序
屬于Shell的一部分屬于Shell解釋器程序之外的命令
沒有單獨對應的系統文件每個外部命令對應了系統中的一個文件
自動載入內存,可以直接使用必須知道其對應的文件位置,有Shell加載后才能執行

1.3 Linux命令

  • 格式:命令字 [選項] [參數] 操作對象
    • 命令字、選項、參數之間用空格分開,多余的空格將被忽略。
    • [ ]括起來的部分表示可以省略,即命令行可以只有命令字,也可以只有命令字、選項,或者只有命令字、參數。
  • 命令字
    • 命令字即命令名稱,是整條命令中最關鍵的一部分。在 Linux 的字符操作界面中,使用命令字唯一確定一條命令,因此在輸入命令時一定要確保輸入的命令字正確。
    • 在 Linux的命令環境中,無論是命令名還是文件名,對英文字符的處理是區分大小寫的,操作時需要注意。
  • 選項
    • 選項的作用是調節命令的具體功能,決定這條命令如何執行。同一個命令字配合不同的選項使用時,可以獲得相似但具有細微差別的功能。
    • 命令使用的選項有如下一些特性:
      • 不同的命令字能夠使用的選項也會不同(選項的個數和內容)。
      • 選項的數量可以是多個,也可以省略。同時使用多個選項時,選項之間使用空格分隔。若不使用選項,將執行命令字的默認功能。
      • 使用單個字符的選項時,一般在選項前使用“-”符號(半角的減號符)引導,稱為短格式選項,如“-l”。多個單字符選項可以組合在一起使用,如“-al”等同于“-a -l”。
      • 使用多個字符的選項時,一般在選項前使用“–”符號(兩個半角的減號符)引導,稱為長格式選項,如“–help”。
    • 有些命令字對于同一功能會同時提供長、短兩種格式的選項。長格式的選項意義明確,容易記憶,而短格式的選項結構簡單、輸入快捷。兩種格式可以混用。
  • 注意:
    • Linux區分大小寫,參數有多個的時候,可以分開寫,也可以合并寫,參數如果用簡寫使用-開頭,如果寫單詞全拼,用–開頭。
    • 命令幫助:對于不熟悉的命令和參數,可以使用幫助來查看。如:命令 --help;除了–help之外,還有一個幫助命令,這個命令顯示的信息更完整,這個命令是:man 命令。

在實際使用 Linux 命令行的過程中,“選項”和“參數”的稱謂經常混淆,甚至前后順序也允許顛倒,但一般不會影響命令的執行效果,所以很多時候并不做嚴格區分。

1.4 編輯Linux命令行

編輯Linux命令行的輔助操作

  • Tab 鍵:自動補齊
    該功能只能向后補齊,且必須以已輸入的部分字符開頭,能夠唯一定位一個命令字或文件、目錄名,否則可按兩次 Tab鍵,系統將輸出可用的名稱列表。
  • 反斜杠“\”:強制換行
  • Ctrl+U組合鍵:清空至行首
  • Ctrl+K組合鍵:清空至行尾
  • Ctrl+L組合鍵:清屏
  • Ctrl+C組合鍵:取消本次命令編輯

2 Linux系統的命令幫助

2.1 使用help命令

  • help 命令本身是 Linux Shell 中的一個內建指令,其用途是查看各 Shell 內部命令的幫助信息。
  • 使用 help 命令時,只需要添加內部命令的名稱作為參數即可。
  • 例如,執行“help pwd” 命令可以查看 Shell 內部命令 pwd 的幫助信息(pwd 命令用于顯示當前用戶所在的工作目錄)。

2.2 使用“–help”選項

  • 對于大多數 Linux 外部命令,可以使用一個通用的命令選項“–help”來顯示對應命令字的格式及選項等幫助信息。若該命令字沒有“–help”選項,一般只會提示簡單的命令格式。
  • 例如,執行“ls --help”命令可以查看 ls 命令的幫助信息(ls 命令用于顯示文件或目錄列表信息)

2.3 使用man手冊

  • man 手冊頁(Manual Page)是 Linux 操作系統中最為常用的一種在線幫助形式,絕大部分的外部軟件在安裝時為執行程序、配置文件提供了詳細的幫助手冊頁。這些手冊頁中的信息按照特定的格式進行組織,通過統一的手冊頁瀏覽程序 man 進行閱讀。
  • 例如,執行“man file”命令可以查看 file 命令的手冊頁信息(file 命令用于判斷文件的類型)
  • 在閱讀 man 手冊頁時將以全屏的文本方式顯示,并且提供了交互式的操作環境。
  • 按↑、↓方向鍵可以向上、向下滾動一行文本內容;按 Page Up 鍵和 Page Down 鍵可以向上、向下翻頁顯示;按 Q 鍵或 q 鍵可以隨時退出手冊頁的閱讀環境;按/鍵后可以對手冊內容進行查找,如輸入“/-v”可以查找到“-v”選項的幫助信息,若找到的結果有多個,還可以按 n 鍵或N 鍵分別向下、向上進行定位選擇。
  • 如果需要將 man 手冊頁的內容保存成文本文件以便在其他系統中查看,可以結合 col命令去除手冊頁中的格式控制字符,并將顯示結果保存為新的文件。
    man ls | col -b > lshelp.txt
    • col 是一個命令程序,用于過濾文本中的一些特殊控制字符
    • 管道:用豎杠符號“|”表示,用于將前面命令的屏幕輸出結果作為后面命令的操作對象(輸入)
    • 重定向輸出:用大于符號“>”表示,前面的命令成功執行以后,其屏幕輸出結果將保存到“>”號后邊指定的文件中,而不是直接輸出到屏幕,因此稱為重定向

3 Linux系統的基礎命令

3.1 查看系統版本

  • 語法 : cat /etc/*release
  • *release 表示顯示任意以release結尾的文件

3.2 date命令

用于打印或設置系統的日期和時間,能夠顯示當前時間,支持多種時間格式的自定義輸出,可以設置系統時間(需要管理員權限)。

  • 基本語法:
    date [選項]… [+格式]
    date [選項] [MMDDhhmm[[CC]YY][.ss]]
  • 顯示當前時間:
    直接輸入 date 即可顯示當前的系統時間。
  • 設置系統時間:
    通過格式 date -s “YYYYMMDD hh:mm:ss” 可以設置具體的日期和時間。

3.3 hwclock命令

hwclock命令用于顯示與設定硬件時鐘

  • 語法:
    hwclock [–adjust][–debug][–directisa][–hctosys][–show][–systohc][–test][–utc][–set --date=<日期與時間>]
  • 參數:
    –adjust  hwclock每次更改硬件時鐘時,都會記錄在/etc/adjtime文件中。使用–adjust參數,可使hwclock根據先前的記錄來估算硬件時鐘的偏差,并用來校正目前的硬件時鐘。
    –debug  顯示hwclock執行時詳細的信息
    –directisa  hwclock預設從/dev/rtc設備來存取硬件時鐘。若無法存取時,可用此參數直接以I/O指令來存取硬件時鐘
    –hctosys  將系統時鐘調整為與目前的硬件時鐘一致
    –set --date=<日期與時間>  設定硬件時鐘
    –show  顯示硬件時鐘的時間與日期
    –systohc  將硬件時鐘調整為與目前的系統時鐘一致
    –test  僅測試程序,而不會實際更改硬件時鐘
    –utc  若要使用格林威治時間,請加入此參數,hwclock會執行轉換的工作。
  • 查看硬件時鐘:hwclock
  • 設置硬件時鐘時間(將系統時間寫入硬件時鐘):hwclock --systohc
  • 從硬件時鐘讀取時間,設置系統時間:hwclock --hctosys

3.4 Linux系統硬件時鐘和系統時間

在Linux系統中,硬件時鐘(也稱為實時時鐘或RTC, Real-Time Clock)和系統時間(也稱為軟件時鐘或內核時鐘)是兩個不同的概念,它們各自扮演著重要的角色。

3.4.1 硬件時鐘 (RTC)

  • 定義:
    硬件時鐘是指計算機主板上的一個物理時鐘裝置,它即使在計算機關閉或斷電的情況下也能保持運行。RTC通常由一個小的電池供電,確保時間信息不會丟失。
  • 功能:
    • 主要負責保存系統的當前時間和日期,以便在系統啟動時提供一個初始的時間設置。
    • 它在系統未啟動時也能保持準確的時間,從而為系統提供了重啟后的基本時間參考。
  • 特點:
    • 在系統未啟動時也能保持準確的時間。
    • 一般存儲的是協調世界時(UTC),但也可以配置為本地時間(這取決于系統的設置)。
    • 通過 hwclock 命令可以查看和設置硬件時鐘。

3.4.2 系統時間

  • 定義:
    系統時間是由操作系統內核維護的一個虛擬時鐘,它依賴于CPU的時鐘周期來計時。當系統啟動時,它會根據硬件時鐘初始化,并且在系統運行期間持續更新。
  • 功能:
    用于記錄和管理所有與時間相關的操作,如文件的時間戳、日志記錄、定時任務等。它是Linux系統中所有應用程序和服務獲取當前時間的主要來源。
  • 特點:
    • 只在系統運行時有效;一旦系統關閉或重啟,這個時鐘就會停止計時。
    • 系統時間通常是基于協調世界時(UTC),然后根據系統的時區設置轉換為本地時間。
    • 系統時間可以通過網絡時間協議(NTP)進行同步,以確保與互聯網標準時間服務器的時間一致。
    • 通過 date 和 timedatectl 命令可以查看和設置系統時間。

3.4.3 兩者區別

  • 電源依賴性:硬件時鐘在系統關閉后仍然保持工作,而系統時間則依賴于系統的運行狀態。這意味著硬件時鐘可以在系統未通電的情況下繼續計時,而系統時間則會在系統關閉后停止。
  • 準確性:硬件時鐘可能會有輕微的漂移,尤其是在長時間未校準的情況下。相比之下,系統時間可以通過NTP服務定期與外部時間服務器同步,因此通常更加準確。
  • 初始化:系統啟動時,硬件時鐘的時間會被用來初始化系統時間。之后,系統時間會獨立運行,并可能通過NTP等方式進行調整,而不再直接依賴硬件時鐘。
  • 作用范圍:硬件時鐘僅用于保存基本的時間信息,而系統時間則涉及到整個操作系統的各種時間敏感型操作,如文件系統的時間戳、日志記錄、計劃任務執行等。

3.4.5 時間不同步的危害

硬件時鐘和系統時間不同步可能會給Linux系統帶來一系列問題,影響系統的穩定性和可靠性:

  • 日志記錄錯誤
  • 計劃任務執行失敗
  • 文件系統和數據庫一致性問題
  • 網絡通信問題
  • 應用程序行為異常
  • 審計和合規性問題

3.4.6 時間同步

為了確保系統時間的準確性,通常建議采取以下措施:

  • 啟動時同步
    在系統啟動時,使用 hwclock --hctosys 將硬件時鐘的時間復制到系統時間。這一步驟確保了系統啟動時能夠獲得一個相對準確的時間起點。
  • 運行時同步
    在系統運行期間,使用NTP服務(如 ntpd 或 systemd-timesyncd)來定期同步系統時間。這有助于保持系統時間與全球標準時間的一致性,特別是在網絡連接可用的情況下。
  • 關機時同步
    在系統關閉前,使用 hwclock --systohc 將系統時間寫回到硬件時鐘,以確保下一次啟動時的時間是準確的。這對于那些不經常連接到互聯網的系統尤為重要,因為它們無法通過NTP服務來頻繁校正時間。

如果在生產環境中,不建議寫一個定時器自動同步硬件時鐘腳本。如果時間更新跳躍幅度太大,請仔細評估時間更新后是否會對已運行系統造成影響,避免同步后依賴于時間戳的系統業務出現重大問題。

3.5 清屏命令

clear:用于清除終端屏幕上的內容,使屏幕變得干凈整潔。這在終端顯示的信息過多,或者你想要一個全新的工作界面時非常有用。

3.6 logout命令

logout:用于退出系統(注銷)

3.7 shutdown命令

shutdown 命令可以用來進行關機程序,并且在關機以前傳送訊息給所有使用者正在執行的程序,shutdown 也可以用來重開機。

  • 語法:shutdown [-t seconds] [-rkhncfF] time [message]
  • 參數說明:
    • -t seconds : 設定在幾秒鐘之后進行關機程序。
    • -k : 并不會真的關機,只是將警告訊息傳送給所有使用者。
    • -r : 關機后重新開機。
    • -h : 關機后停機。
    • -n : 不采用正常程序來關機,用強迫的方式殺掉所有執行中的程序后自行關機。
    • -c : 取消目前已經進行中的關機動作。
    • -f : 關機時,不做 fsck 動作(檢查 Linux 檔系統)。
    • -F : 關機時,強迫進行 fsck 動作。
    • time : 設定關機的時間。
    • message : 傳送給所有使用者的警告訊息。

3.7.1 關機

shutdown -h 指定時間,此處-h參數是halt的縮寫。

  • shutdown -h now 代表立刻關機
  • shutdown -h 10 代表10分鐘以后關機
  • shutdown -h 20:00:00 代表晚上八點整關機
  • poweroff:立刻關機

3.7.2 重啟

shutdown -r 指定時間,-r是reboot的縮寫,代表重啟
reboot本身也是一個重啟命令

  • shutdown -r now 代表立刻重啟
  • shutdown -r 10 代表10分鐘以后重啟
  • shutdown -r 20:00:00 代表晚上八點整重啟
  • reboot 代表立即重啟

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/82154.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/82154.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/82154.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

WebRTC與RTSP|RTMP的技術對比:低延遲與穩定性如何決定音視頻直播的未來

引言 音視頻直播技術已經深刻影響了我們的生活方式&#xff0c;尤其是在教育、醫療、安防、娛樂等行業中&#xff0c;音視頻技術成為了行業發展的重要推動力。近年來&#xff0c;WebRTC作為一種開源的實時通信技術&#xff0c;成為了音視頻領域的重要選擇&#xff0c;它使得瀏覽…

多通道振弦式數據采集儀MCU安裝指南

設備介紹 數據采集儀 MCU集傳統數據采集器與5G/4G,LoRa/RS485兩種通信功能與一體的智能數據采集儀。該產品提供振弦、RS-485等的物理接口&#xff0c;能自動采集并存儲多種自然資源、建筑、橋梁、城市管廊、大壩、隧道、水利、氣象傳感器的實時數據&#xff0c;利用現場采集的數…

Vue3 + Element Plus表格篩選樣式設置

如果彈出框掛載在 body 下&#xff08;而非組件內部&#xff09;&#xff0c;scoped 樣式無法生效&#xff0c;這時就需要使用全局樣式。 強制全局樣式 1、添加全局樣式文件&#xff08;或在原有的文件中添加以下內容&#xff09; src/assets/global.scss /* 全局強制樣式覆…

vue--ofd/pdf預覽實現

背景 實現預覽ofd/pdf超鏈接功能 業務實現 pdf的預覽 實現方式&#xff1a; 直接使用 <iframe :src"${url}#navpanes0&toolbar0" /> 實現pdf的預覽。 navpanes0 隱藏側邊欄toolbar0 隱藏頂部工具欄 使用pdf.js&#xff0c;代碼先行&#xff1a; <tem…

【C++20新特性】ranges::sort()使用方法,優勢,注意點

以下是關于 ranges::sort() 的詳細說明&#xff1a; 1. ranges::sort() 的使用方法 ranges::sort() 是 C20 引入的基于范圍&#xff08;Ranges&#xff09;的排序函數&#xff0c;其語法更簡潔&#xff0c;支持直接操作容器或范圍對象。 (1)基本用法 #include <vector&g…

深入理解設計模式之適配器模式

深入理解設計模式之適配器模式 1. 適配器模式概述 適配器模式(Adapter Pattern)是一種結構型設計模式&#xff0c;它允許將一個類的接口轉換為客戶端所期望的另一個接口。適配器模式使得原本由于接口不兼容而不能一起工作的類能夠協同工作&#xff0c;扮演了"轉換器&quo…

【數據結構 · 初階】- 快速排序

目錄 一. Hoare 版本 1. 單趟 2. 整體 3. 時間復雜度 4. 優化&#xff08;搶救一下&#xff09; 4.1 隨機選 key 4.2 三數取中 二. 挖坑法 格式優化 三. 前后指針&#xff08;最好&#xff09; 四. 小區間優化 五. 改非遞歸 快速排序是 Hoare 提出的一種基于二叉樹…

第2周 PINN核心技術揭秘: 如何用神經網絡求解偏微分方程

1. PDEs與傳統數值方法回顧 (Review of PDEs & Traditional Numerical Methods) 1.1 什么是偏微分方程 (Partial Differential Equations, PDEs)? 偏微分方程是描述自然界和工程領域中各種物理現象(如熱量傳播、流體流動、波的振動、電磁場分布等)的基本數學語言。 1.…

Neo4j(二) - 使用Cypher操作Neo4j

文章目錄 前言一、Cypher簡介二、數據庫操作1. 創建數據庫2. 查看數據庫3. 刪除數據庫4. 切換數據庫 三、節點、關系及屬性操作1. 創建節點與關系1.1 語法1.2 示例 2. 查詢數據2.1 語法2.2 示例 3. 更新數據3.1 語法3.2 示例 4. 刪除節點與關系4.1 語法4.2 示例 5. 合并數據5.1…

RabbitMQ的Web管理頁面給我看懵了,這都什么意思啊

文章目錄 OverviewTotalsMessage RatesQueued Messages NodesChurn StatisticsPorts and ContextsExport DefinitionsImport Definitions ConnectionsChannelsExchangesQueuesAdmin他們之間的關聯 在上一篇文章中我們講到了如何在Windows中安裝Rabbitmq&#xff0c; 小白也能搞…

安全基礎與協議分析

5.1 Web安全基礎 5.1.1 Web安全基礎概覽&#xff08;一、二&#xff09; Web安全的核心目標是保護Web應用及其數據免受攻擊&#xff0c;涵蓋以下關鍵領域&#xff1a; 攻擊面&#xff1a; 前端漏洞&#xff08;XSS、CSRF&#xff09;。 后端漏洞&#xff08;SQL注入、RCE&a…

STM32項目實戰:ADC采集

STM32F103C8T6的ADC配置。PB0對應的是ADC1的通道8。在標準庫中&#xff0c;需要初始化ADC&#xff0c;設置通道&#xff0c;時鐘&#xff0c;轉換模式等。需要配置GPIOB的第0腳為模擬輸入模式&#xff0c;然后配置ADC1的通道8&#xff0c;設置轉換周期和觸發方式。 接下來是I2C…

第十四章:數據治理之數據源:數據源的數據接入、業務屬性梳理及監控

本章開始&#xff0c;將進入9大模塊的介紹。第一個模塊我們先介紹&#xff1a;數據源。數據源是整個數據中臺數據的來源&#xff0c;是一個起點。更好的管理好數據源這個起點&#xff0c;是數據治理的一個好的開始。 在【數據&#xff1a;業務生數據&#xff0c;數據生“萬物”…

【C/C++】多線程開發:wait、sleep、yield全解析

文章目錄 多線程開發&#xff1a;wait、sleep、yield全解析1 What簡要介紹詳細介紹wait() — 條件等待&#xff08;用于線程同步&#xff09;sleep() — 睡覺&#xff0c;定時掛起yield() — 自愿讓出 CPU 2 區別以及建議區別應用場景建議 3 三者協作使用示例 多線程開發&#…

阿里云CDN刷新預熱--刷新URL

文章目錄 一、全英文URL刷新預熱二、摻雜中文的URL刷新預熱2.1 對帶中文URL進行編碼2.2 預熱刷新 三、CDN刷新-核心作用與價值3.1 核心作用3.2 核心價值3.3 典型使用場景 *最后我想說&#xff1a;請你不要相信我說的每一句話&#xff0c;這只是我的個人經驗* 一、全英文URL刷新…

Oracle 19c DG備庫報錯ORA-00313、ORA-00312、ORA-27037

Oracle 19c DG備庫報錯ORA-00313、ORA-00312、ORA-27037 錯誤排查問題處理錯誤排查 DG同步完成后,DG Broker show database發現以下告警信息: Database Warning(s):ORA-16826: apply service state is inconsistent with the DelayMins propertyORA-16789: standby redo log…

開源與閉源之爭:AI時代的創新博弈與未來抉擇

在人工智能技術狂飆突進的今天&#xff0c;開源與閉源之爭已不再局限于技術圈的討論&#xff0c;而是演變為一場關乎技術倫理、商業格局乃至人類文明走向的深度博弈。當Meta的Llama 3開源模型下載量突破百萬&#xff0c;當OpenAI的GPT-5繼續加固技術壁壘&#xff0c;這場沒有硝…

NIFI的處理器:JSLTTransformJSON 2.4.0

該處理器使用JSLT轉換FlowFile JSON有效負載的格式。使用轉換后的內容創建新的FlowFile&#xff0c;并將其路由到“成功”關系。如果JSLT轉換失敗&#xff0c;則將原始FlowFile路由到“失敗”關系。 需要注意的是&#xff0c;編譯JSLT轉換可能相當昂貴。理想情況下&#xff0c…

MySQL 索引失效及其解決辦法

一、前言 在數據庫優化中,索引(Index)是一項至關重要的技術手段,可以顯著提升查詢性能。然而,在實際開發過程中,MySQL 索引并不總是如預期生效。本文將從原理出發,系統地介紹索引失效的常見場景及其解決方案,幫助開發者有效規避性能陷阱。 二、索引基礎回顧 MySQL 支…

趨勢觸發策略

趨勢觸發策略(TS版)是一種基于TrendTriggerFactor(TTF)的交易策略,通過柱狀圖顏色變化指示市場趨勢的強度,并根據TTF的穿越信號進行買賣操作。 TTF是通過計算買方力量和賣方力量的差值除以兩者之和的一半再乘以100得到的。 當TTF大于100時,柱狀圖顯示為綠色,表示市場…