Linux基礎命令(1)

1.強大好用的Shell

Shell是一個命令工具。Shell(也稱終端或殼)充當的是人與內核(硬件)之間的翻譯官,用戶把一些命令“告訴”終端,它會調用相應的程序服務去完成某些工作。

現在紅帽系統在內的許多主流Linux系統默認使用的終端是Bash解釋器,它主要有以下4項優勢

①通過上下方向鍵來調取過往執行過的Linux命令;

②命令或參數僅需輸入前幾位就可以用Tab鍵補全

③具有強大的批處理腳本;

④具有實用的環境變量功能。

2、執行查看幫助命令

Linux命令格式:

命令名稱 [命令參數]? [命令對象]

注意,命令名稱 、命令參數、命令對象之間要用空格鍵隔開。

長格式? man --help

短格式? man -help

首先我們先拿man這個命令實現一下

切換到root管理員身份

打開Linux系統命令行終端(我這里使用的是8版本哈)

輸入man man命令查看man命令自身的幫助信息(敲回車鍵即可)

man命令中常用按鍵以及用途

按鍵用途
空格鍵向下翻一頁
PaGe down向下翻一頁
PaGe? up向上翻一頁
home直接前往首頁
end直接前往尾頁
/從上至下搜素某個關鍵詞,如“/linux”
從上至下搜素某個關鍵詞,如“?linux”
n定位到下一個搜索到的關鍵詞
N定位到上一個搜索到的關鍵詞
q退出幫助文檔

man命令幫助信息的結構意義

結構名稱代表意義
NAME命令的名稱
SYNOPSIS參數的大致使用方法
DESCRIPTION介紹說明
EXAMPLES演示(附帶簡單的說明)
OVERVIEW概述
DEFAULTS默認的功能
OPTIONS具體的可用選項(帶介紹)
ENVIRPNMENT環境變量
FILES用到的文件
SEE ALSO相關的資料
HISTORY維護歷史與聯系方式

常用系統工作命令

1、echo命令

echo命令用于在終端輸出字符串或變量提取后的值,格式為:echo [字符串|$變量]

例如:把指定字符串“happy”輸出到終端屏幕的命令為

[root@localhost ~]# echo happy

下面,我們使$變量的方式提取SHELL的值

[root@localhost ~]# echo $SHELL

2、date命令

date命令用于顯示及設置系統的時間或日期

格式為:data [選項][+指定的格式]

date命令中參數及其作用

參數作用
%t跳格[Tab鍵]
%H小時(00-23)
%I小時(00-12)
%M分鐘(00-59)
%S秒(00-59)
%j今年中的第幾天

按默認格式查看當前系統時間的date命令如下

[root@localhost ~]# date
Sun Mar 14 22:42:03 EDT 2021

按照 年-月-日 小時:分鐘:秒 的格式查看當前系統時間的date命令如下

[root@localhost ~]# date "+%Y-%m-%d %H:%M:%S"
2021-03-14 22:44:04

將系統的當前時間設置為2017年8月8日8點28分擔date命令如下

[root@localhost ~]# date -s "20170808 8:28:00"
Tue Aug? 8 08:28:00 EDT 2017

[root@localhost ~]# date
Tue Aug? 8 08:28:36 EDT 2017

date查看今年是當年中的第幾天

[root@localhost ~]# date "+%j"
220

3、reboot命令

reboot命令用于重啟系統(由于重啟計算機會涉及硬件資源的管理權限,只能使用root管理員來重啟)

[root@localhost ~]# reboot

4、poweroff

poweroff命令用于關閉系統,該命令與reboot命令相同,都會涉及硬件資源的管理權限,因此只有root管理員才可以關閉電腦

[root@localhost ~]# poweroff

5、wegt命令

wegt命令用于在終端下載網絡文件,格式為“wget[參數] 下載地址”

wegt命令參數及其作用

參數作用
-b后臺下載模式
-P下載到指定目錄
-t最大嘗試次數
-c斷點續傳
-p下載頁面內所有資源,包括圖片視頻
-r

遞歸下載

嘗試使用wegt命令下載

6、ps命令

ps命令用于查看系統中的進程狀態,格式為:“ps[參數]”

ps命令的參數以及作用

參數作用
-a顯示所有進程(包括其他用戶進程)
-u用戶以及其他詳細信息
-x顯示沒有控制終端的進程

Linux系統中時刻運行著許多進程,如果能夠合理管理它們,則可以優化系統的性能。

有五種常見的進程狀態,分別為運行,中斷,不可中斷,僵死和停止

R(運行):進程正在運行或在運行的隊列中等待

S(中斷):進程處于休眠中,當某個條件達成后或者接收到信號時,則脫離該狀態

D(不可中斷):進程不響應系統異步信號,即便用kill命令也不能將其中斷

Z(僵死):進程已經終止,但是進程描述符依然存在,直到父進程調用wait4()系統函數后將進程釋放

T(停止):進程收到停止信號后停止運行。

進程狀態

USERPID%CPU%MEMVSZRSSTTYSTATSTARTTIMECOMMAND
進程所有者進程ID運算器占有率內存占用率虛擬內存使用量(單位是KB)占用的固定內存量(單位是KB)所在終端進程狀態被啟動的時間實際使用CPU的時間命令名稱與參數

7、top命令

top命令用于動態地監視進程活動與系統負載調信息

下圖中每行的意義

第一行:系統時間,運行時間,登錄終端數,系統負載(三個數值分別為1分鐘,5分鐘,15分鐘內的平均值,數值越小意味著負載越低)

第二行:進程總數,運行中的進程數,睡眠中的進程數,停止的進程數,僵死的進程數

第三行:用戶占用資源百分比,系統內核占用資源百分比,改變過優先級的進程資源百分比,空閑的資源百分比等

第四行:物理內存總量,內存使用量,內存空閑量,虛擬內存空閑量,已被提前加載的內存量

8、pidof命令

pidof命令用于查看某個指定服務進程的PID值,格式為:pidof【參數】【服務名稱】

[root@localhost ~]# pidof sshd
1022

9、kill命令

kill命令用于終止某個指定PID的服務進程。

10、killall命令

killall命令用于終止某個指定名稱的服務所對應的全部進程。

3、系統狀態監測命令

1、ifconfig命令

ifconfig命令用于獲取網卡配置與網絡狀態等信息

2、uname命令

uname命令用于查看系統內核與版本等信息

[root@localhost ~]# uname -a
Linux localhost.localdomain 4.18.0-80.el8.x86_64 #1 SMP Wed Mar 13 12:02:46 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

3、uptime命令

uptime命令用于查看系統的負載信息

[root@localhost ~]# uptime
?23:33:26 up 34 min,? 1 user,? load average: 0.00, 0.00, 0.06

4、free命令

free命令用于顯示當前系統中內存的使用量信息

[root@localhost ~]# free -h

?????????? 內存總量?? 已用量??? 可用量? 進程共享的內存量?? 磁盤緩存的內存量?? 可以用的內存量
????????????? total??????? used??????? free????? shared??? buff/cache?? available
Mem:????????? 1.8Gi?????? 1.2Gi?????? 126Mi??????? 14Mi?????? 459Mi?????? 415Mi
Swap:???????? 2.0Gi??????? 10Mi?????? 2.0Gi

5、who命令

who命令用于查看當前登入主機的用戶終端信息

[root@localhost ~]# who
root???? tty2???????? 2021-03-14 23:00 (tty2)

登錄的用戶名終端設備登錄到系統的時間
root

tty2

2021-03-14 23:00 (tty2)

???

6、last命令

last命令用于查看所有系統的登錄記錄

7、history命令

history命令用于顯示歷史執行過的命令

8、sosreport命令

sosreport命令用于收集系統配置及構架信息并輸出診斷文檔。

[root@localhost ~]# sosreport

sosreport (version 3.6)

This command will collect diagnostic and configuration information from
this Red Hat Enterprise Linux system and installed applications.

An archive containing the collected information will be generated in
/var/tmp/sos.le34fxce and may be provided to a Red Hat support
representative.

Any information provided to Red Hat will be treated in accordance with
the published support policies at:

? https://access.redhat.com/support/

The generated archive may contain data considered sensitive and its
content should be reviewed by the originating organization before being
passed to any third party.

No changes will be made to system configuration.

Press ENTER to continue, or CTRL-C to quit.

Please enter the case id that you are generating this report for []:

?Setting up archive ...
?Setting up plugins ...

?Running plugins. Please wait ...?????????????????????????
Finished running plugins????????????????????????????????????????????????????????????? ?
Creating compressed archive...

Your sosreport has been generated and saved in:
? /var/tmp/sosreport-localhost-2021-03-14-odhuaxj.tar.xz

The checksum is: 645e5bd252bfd11b58875d49a169a209

Please send this file to your support representative.

4、工作目錄切換命令

1、pwd命令

pwd命令用于顯示用戶當前所處的工作目錄

[root@localhost ~]# pwd
/root

2、cd命令

cd命令用于切換工作路徑,格式為:cd 【目錄名稱】

[root@localhost ~]# cd /etc
[root@localhost etc]#

此時,要返回上一層的目錄1,可執行如下命令:

[root@localhost etc]# cd -
/root
[root@localhost ~]#

還可以通過下面的命令快速回到家目錄

[root@localhost ~]# cd /etc
[root@localhost etc]# cd ~

3、ls命令

ls命令用于查看目錄的文件信息,格式為“ls【選項】【文件】”

如果想要查看目錄屬性信息,則需要額外添加一個-d參數

[root@localhost ~]# ls -ld /etc
drwxr-xr-x. 135 root root 8192 Mar 14 22:59 /etc

5、文本文件編輯命令

1、cat命令

cat命令用于查看純文本文件(內容比較少的),格式為“cat 【選項】【文件】”。

額外加-n參數,顯示行號

2、more命令

more命令用于查看純文本文件(內容較多的),格式為“more 【選項】文件”

3、head命令

head命令用于查看從未被文檔的前N行,格式為“head 【選項】【文件】”

[root@localhost ~]# head -n 20 initial-setup-ks.cfg

4、tail命令

tail命令用于查看純文本文檔的后N行或持續刷新內容,格式為“tail 【選項】【文件】”

tail命令最強悍的功能是可以持續刷新一個文件的內容,當想要實時查看最新的日志文件時,這就特別有用,此時的命令格式為:tail -f 文件名

5、tr命令

tr命令用于替換文本文件中的字符,格式為 tr 【原始字符】【目標字符】

6、wc命令

wc命令用于統計指定文本的行數,字數,字節數,格式為 wc【參數】文本

wc參數以及作用

參數作用
-l只顯示行數

-w

只顯示單詞數

-c

只顯示字節數

[root@localhost ~]# wc -l /etc/passwd
45 /etc/passwd

7、stat命令

stat命令用于查看文件的具體存儲信息和時等信息,格式為“ stat 文件名稱”

8、cut命令

cut命令用于按“列”提取文本字符,格式為“cut 【參數】文本”

9、diff命令

diff命令用于比較多個文本文檔的差異

diff --brief 文件1 文件2? 判斷文件是否相同

diff -c 文件1 文件2? 描述文件內容具體的不同

?5、文件目錄管理命令

1、touch命令

touch命令用于創建空白文件或設置文件的時間,格式為:“touch 【選項】【文件】”

在創建空白的文本文檔方面,這個touch相當簡捷。

參數作用
-a僅修改“讀取時間”
-m僅修改“修改時間”
-d同時修改atime和mtime

我們通過Xshell遠程連接虛擬機進程操作,方便快捷,不用頻繁切換。

附上Xshell6的安裝包,可能不是最新版本,自行更新也不費事哈。

鏈接:https://pan.baidu.com/s/1abe28wTAHsZShB3R9qWIvQ
提取碼:z7q0

接下來我們簡單實現touch的功能

建立一個空白文件

[root@localhost ~]# touch test

查看test文件的修改日期

我們寫入一些內容后,繼續查看時間

[root@localhost ~]# echo "happy" >> test
[root@localhost ~]# ls -l test

我們再次通過touch命令把修改后的文件時間設置成修改之前的時間

[root@localhost ~]# touch -d "2021-03-15 02:08" test

2、mkdir命令

mkdir命令用于創建空白的目錄,格式為:“mkdir 【選項】 目錄”

除了能創建單個空白目錄之前,mkdir還能結合-p參數來遞歸創建出具有嵌套疊層關系的文件目錄

[root@localhost ~]# mkdir test1
[root@localhost ~]# cd test1/
[root@localhost test1]# mkdir -p a/b/c/d
[root@localhost test1]# cd a
[root@localhost a]# cd b
[root@localhost b]#

3、cp命令

cp命令用于復制文件或目錄,格式為“cp 【選項】源文件 目標文件”

在Linux系統中哦,復制操作具體分為三種情況:

①如果目標文件是目錄,則會把源文件復制到該目錄中;

②如果目標文件也是普通文件,則會詢問是否要覆蓋它;

③如果目標文件不存在,則執行正常的復制操作

cp命令的參數及其作用

參數作用
-p保留原始文件的屬性
-d若對象為“鏈接文件”,則保留該“鏈接文件”的屬性

-r

遞歸持續復制(用于目錄)
-i若目標文件存在則詢問是否覆蓋
-a

相當于-pdr(p、d、r為上述參數)

[root@localhost ~]# cp test? testcp

4、mv命令

mv命令用于剪切文件或文件重命名,格式為:“mv 【選項】 源文件 【 目標路徑|目標文件名】”

剪切操作不同于復制操作,因為它會默認把源文件刪除掉,只保留剪切后的文件。如果在同一個目錄中對一個文件進行剪切操作,其實也是對其進行重命名。

[root@localhost ~]# mv testcp? one (看文件時間)

?5、rm命令

rm命令用于刪除文件或目錄,格式為:“rm 【選項】文件”

刪除文件時,系統會默認向您詢問是否要執行刪除操作,如果不想總是看到這種反復確認的信息,可在rm命令后跟上-f的參數來強制刪除。另外想要刪除一個目錄,要在rm命令后面跟上一個-r參數才可以,否則刪除不掉。

6、dd命令

dd命令用于按照指定大小和個數的數據塊來復制文件或轉移文件,格式為:“dd【參數】”

dd命令是一個比較有特色的一個命令,它能夠讓用戶按照指定大小和個數的數據塊來復制文件的內容。

dd命令的參數及其作用

參數作用
if輸入的文件名稱
of

輸出的文件名稱

bs設置每個“塊”的大小
count設置要復制“塊”的個數

7、file命令

file命令用于查看文件的類型。格式為:“file 文件名”

6,打包壓縮與搜索命令

1、tar命令

tar命令用于對文件進行打包壓縮或解壓,格式為:“tar 【選項】【文件】”

tar命令的參數及其作用

參數作用
-c創建壓縮文件
-x解開壓縮文件
-t查看壓縮包內有那些文件
-z用Gzip壓縮或解壓
-j用bzip2壓縮或解壓
-v顯示壓縮或解壓的過程
-f目標文件名
-p保留原始的權限和屬性
-P使用絕對路徑來壓縮
-C指定解壓到的目錄

2、grep命令

grep命令用于1文本執行關鍵詞搜索,并顯示匹配的結果,格式為:“grep 【選項】【文件】”

grep命令的參數及其作用

參數作用
-b將可執行的文件當做文本文件來搜索
-c僅顯示找到的行數
-i忽略大小寫
-n顯示行號
-v反向選擇——僅列出沒有“關鍵詞”的行

3、find命令

find命令用于按照指定條件來查找文件,格式為“find 【查找路徑】尋找條件 操作”

在Linux系統中,搜索工作一般都是通過find命令來完成的,它可以使用不同的文件特性作為尋找條件(如文件名,大小,修改時間,權限等信息),一旦匹配成功則默認將信息顯示到屏幕上。

find命令中的參數和作用

參數作用
-name匹配名稱
-perm匹配權限
-user匹配所有者
-group匹配所有組
-mtime -n +n匹配修改內容的時間
-atime -n +n匹配訪問文件的時間
-ctime -n +n匹配修改文件權限的時間
-nouser匹配無所有者的文件
-newer f1? !f2匹配比文件f1新但比f2舊的文件
-type b/d/c/p/l/f匹配文件類型
-size匹配文件大小
-prune忽略某個目錄
-exec ··· {}\;后面可跟用于進一步處理搜索的命令
-nogroup匹配無所有組文件

?

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

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

相關文章

Python二級筆記(7)

知識點: 1,鏈式存儲結構既可以針對線性結構也可以針對非線性結構,鏈式存儲結構中每個結點都由數據域與指針域兩部分組成,增加了存儲空間。 2,對象的基本特點:標識唯一性,分類性,多…

Python二級筆記(8)

知識點: 1,棧支持子程序調用。棧上一種只能在一端進行插入或刪除的線性表,在主程序調用子函數時要首先保存主程序當前狀態,然后轉去執行子程序,最終把子程序的執行結果返回到主程序中調用子程序的位置,繼續…

軟件工程(Rational統一過程)

Rational統一過程(Rational Unified Process,RUP)是由Rational軟件公司推出的一種完整而且完美的軟件過程。 RUP總結了經過多年商業化驗證的六條最有效軟件開發經驗,這些經驗被稱為“最佳實踐”。 1,最佳實踐 (1&am…

軟件工程(敏捷過程和極限編程)

1,敏捷過程 為了使軟件開發團隊具有高效工作和快速響應變化的能力,17位著名的軟件專家于2001年2月聯合起草了敏捷軟件開發宣言。 敏捷軟件開發宣言由下述4個簡單的價值觀聲明組成。 (1)個體和交互勝過過程和工具 優秀的團隊成…

軟件工程(可行性研究講解)

可行性研究 可行性研究的目的,就是用最小的代價在盡可能短的時間內確定問題是否能夠解決。(只是尋找客戶所提需求的解決方案,能干還是不能干的問題。) 可行性研究實質上是要進行一次大大壓縮簡化了的系統分析和設計的過程。 GB…

軟件工程(系統流程圖講解)

系統流程圖是概括地模型物理系統的工具。 基本符號 系統符號 系統流程圖的習慣畫法是使信息在圖中從頂向下或從左到右流動。 例子 某裝配廠有一座存放零件的倉庫,倉庫中現有的各種零件的數量以及每種零件的庫存量臨界值等數據記錄在庫存清單主文件中。當倉庫中零…

軟件工程(數據流圖)

數據流圖有4種基本符號: 正方形或(立方體)表示數據的源點或者終點; 圓角矩形(或圓形)代表變換數據的處理; 開口矩形(或兩條平行橫縣)代表數據存儲; 箭頭表…

網絡互聯基礎(1)

網絡互聯的基本概念 計算機網絡起始于20世紀60年代,當時網絡的概念主要是基于主機(Host)架構的低速串行(Serial)連接,提供應用程序執行、遠程打印和數據服務功能。IBM的系統網絡架構(System Network Architecture,SNA)于非IBM公司的X.25公用…

Python二級筆記(9)

知識點: 1,算法的空間復雜點是指算法在執行過程中所需要的內存空間。 2,結構化程序設計的思想包括:自頂向下、逐步求精、模塊化,限制使用goto語句。 3,字典中的“鍵”可以是整數或者字符串,但…

Python二級筆記(10)

知識點: 1,線性表的鏈式存儲結構中每個結點都由數據域與指針域兩部分組成,增加了存儲空間,所以一般要多于順序存儲結構。 2,軟件測試是為了發現錯誤而執行程序的過程,測試要以查找錯誤為中心。 3&#x…

Qt圖形界面編程入門(6)

類的私有繼承方式 ①基類公有成員和保護成員都作為私有成員被派生類繼承,派生類自身的函數可直接訪問他們,但是派生類對象則只能通過本類的公有函數間接地訪問它們。 ②基類的私有成員成為派生類中更加封閉的私有成員,派生類內部成員函數也…

Qt圖形界面編程入門(7)

派生類的構造函數和析構函數 基類的構造函數和析構函數不能被繼承。 在派生類中,如果派生類新增的成員進行初始化,就必須加入新的構造函數。與此同時,對所有從基類繼承下來的成員的初始化工作還是由基類的構造函數完成,必須在派…

Python二級筆記(11)

知識點: 1,在棧中,棧頂指針top動態反映了棧中元素的變化情況,在循環隊列中,隊尾指針和隊頭指針的動態變化決定隊列的長度,在鏈式存儲結構中.無論是循環鏈表還是線性鏈表,插入和刪除元素時&…

Python二級筆記(12)

知識點: 1,機器周期的同步標準是指CPU訪問存儲器一次所需要的時間 2,int()函數可以將整數字符串轉換成整數,也可以將浮點數轉化為整數,但是不能將其他字符串轉換成整數。 3,當max(函數的參數是字典時&am…

Python二級筆記(13)

知識點: 1,機器數,不管是正數還是負數,其補碼的符號位取反即是偏移碼。 2,循環隊列是隊列的一種順序存儲結構 3, break語句會跳出break所在的最內層循環; try中 的語句出錯時會被捕獲異常,執行except下的…

Python二級筆記(14)

知識點: 1,在循環鏈表中,只要指出表中任何一個結點的位置,就可以從它出發不重復地訪問到表中其他所有的結點。 單向鏈表只有從頭指針開始,沿各結點的指針掃描鏈表中的所有結點。 雙向鏈表從任何一一個結點位置出發就可以訪問到表中其他所有結…

Python二級筆記(15)

知識點: 1,數據流圖(DFD)的作用是支持系統功能建模 2,一個數據庫可以有多個外模型(也稱子模式或用戶模型),但概念模型和內模式(物理模式)只能有一個。 3&a…

Linux基礎(管道符、重定向、轉義字符與環境變量)

1、輸入輸出重定向 簡而言之,輸入重定向是指把文件導入到命令中,而輸出重定向則是指把原本要輸出到屏幕的數據信息寫入到指定文件中。 標準輸入重定向(STDIN,文件描述符為0):默認從鍵盤輸入,也…

軟件工程(數據流圖例題詳解)

假設一家工廠的采購部每天需要一張訂貨報表,報表按零件編號排序,表中列出所有需要再次訂貨的零件。對于每個需要再次訂貨的零件應該列出下述的數據:零件編號,零件名稱,訂貨數量,目前價格,主要供…

軟件工程(數據流圖的命名、用途和自動化邊界)

數據流圖中每個成分的命名是否恰當,直接影響數據流圖的可理解性。因此,給這些成分起名字時應該仔細推敲。 命名 1.為數據流(或數據存儲)命名 (1)名字應代表整個數據流(或數據存儲)的內容,而不是僅僅反映它的某些成分。 (2)不要使用空洞的…