跳至內容

Linux常用命令

更新時間
快连VPN:速度和安全性最佳的VPN服务
快连VPN:速度和安全性最佳的VPN服务

命令1:pwd

pwd顯示當前的工作路徑,查看位置所在。

[root@bunian ~]# pwd/root
登錄後複製

命令2:ls

ls命令十分常用,ls指的是list,查看文件或者目錄的命令。添加參數後常用爲:

  • ls :查看目錄中全部的文件
  • ls -l :顯示文件和目錄中的全部信息
  • ls -a :列出全部文件,包含隱藏文件,其中a表示爲all
  • ls  -R :連同子目錄中的文件全部列出,相當於是遞歸列出全部內容,也就是說該目錄下的所有文件的都會被顯示出來
  • ls [0-9]:顯示包含數字的文件名和目錄名

命令3:cp

cp就是copy複製的意思,用於複製文件,該命令還可以將多個文件一次性複製到同一個目錄下

  • cp -a:將文件的特性一起進行復制
  • cp -p:連同文件的屬性一起進行復制,和上面的-a參數相似,常用作備份
  • cp -i :如果目標文件存在,則在覆蓋之前先進行詢問
  • cp -r:遞歸持續的複製
  • cp -u:目標文件和源文件存在差異的時候纔會進行復制

命令4:mv

mv就是move移動的含義,用於移動文件、目錄或者更改文件名

  • mv -f:f是指force,覆蓋之前不會進行詢問
  • mv -i:覆蓋之前進行詢問
  • mv -u:目標文件比源文件新的時候,纔會進行更新
mv 舊文件名 新文件名-- 重命名mv hello.txt /home/peter-- 移動位置mv /dir1 /dir2-- 將目錄dir1移動到目錄dir2中,前提是dir2已經存在,若不存在則改名mv /dir1/* . -- 將dir1下面的全部文件(*代表全部)移動到當前目錄下
登錄後複製

命令5:rm

rm就是指remove的含義,用於刪除文件或者目錄

  • rm -f:強制刪除內容,不會出現任何警告內容
  • rm -i:互動模式,在刪除之前進行詢問是否刪除
  • rm -r:遞歸刪除,最常用於刪除某個目錄下的全部內容

PS:這個命令要謹慎操作!!!

命令6:cd

cd命令代表切換目錄,可使用相對或絕對路徑作爲參數。

自己常用的幾個切換路徑的命令:

  • cd /home/user:切換到”/home/user”目錄下
  • cd:切換到個人主目錄
  • cd ..:返回上一級目錄
  • cd ../..:返回上兩級目錄
  • cd -:返回上次所在的目錄
  • cd ~:退回到用戶的家目錄

需要注意的是,根目錄的父目錄是自身

特殊符號 作 用
~ 代表當前登錄用戶的主目錄
~用戶名 表示切換至指定用戶的主目錄
代表上次所在目錄
. 代表當前目錄
.. 代表上級目錄

命令7:mkdir

mkdir指的是make directory的意思,也就是創建目錄。如果目錄存在,則會報錯。

mkdir test# 創建空白的test目錄mkdir -p test/a/b/c/d# 使用-p參數來遞歸地創建多個層級目錄
登錄後複製

命令8:touch

touch命令是用來創建空白文件或者設置文件的時間。

創建文件很簡單:

touch bunian.txt  # 創建bunian.txt文件
登錄後複製

設置文件的時間主要是體現在:

  • 設置文件內容的修改時間:mtime
  • 文件權限或者屬性的更改時間:ctime
  • 文件的讀取時間:atime

對應的參數爲:

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

命令9:cat

cat命令主要是用來查看文件的內容,後面跟上我們的文件名即可。通常可以用管道符和命令more或者less進行連用。常用的參數選項:

  • cat filename:查看文件的全部內容
  • cat -n  filename :將文件的行數全部顯示出來,包含空行
  • cat -b filename:和-n類似,只是不顯示空行
  • cat -s filename:當遇到有連續兩行以上的空白行,就代換爲一行的空白行
  • cat -E:在每行的結尾顯示$

命令10:more

more命令的功能和cat命令是類似的,只不過是常用來顯示一個長文件,它是以全屏的方式按照分頁的方式顯示內容。cat命令是整個文件的內容顯示在屏幕上,more命令是以分頁的方式來顯示的。

常用的操作:空白鍵space跳到下一頁,b鍵則返回上一頁。

常用的參數爲:

  • +n :從第n開始顯示文件內容
  • -n :屏幕只顯示n行數
  • -s:將連續的空行顯示爲一行
  • -u:將文件內容中的下劃線去掉
  • -c:不進行滾屏操作。每次刷新這個屏幕
  • -l:忽略Ctrl+l換頁字符
  • +/pattern:在每個文檔顯示前搜尋該字串(pattern),然後從該字串之後開始顯示

配合該命令的常用操作:

  • Enter n:向下翻動n行,默認是1行,可自定義
  • Ctrl+F:向下滾動一屏
  • 空格鍵:向下滾動一屏
  • Ctrl+B:返回上一屏
  • V:調用vim編輯器
  • q:推出more命令
  • more +3 bunian.txt# 從第3行開始顯示more -20 bunian.txt # 屏幕只顯示20行more +/hello bunian.txt # 查詢文件中第1次出現hello的位置more -c -5 file# 每5行顯示一次,而且在顯示之前先清屏
    登錄後複製

    如果某個目錄下文件過多,我們可以使用more命令來進行分頁顯示:

    ls -l | more -5   # 輸出當前目錄下的全部文件,並且每頁顯示5個文件信息
    登錄後複製

    還有其他的顯示文件行數的命令:less、head、tail、tac

    tac file# 從最後一行開始顯示行號head -n 4 file# 查看文件的前4行tail -n 8 file# 查看文件的最後8行tail -n +500 file# 從第500行開始顯示,即只顯示500行以後的cat file | head -n 200 | tail -n +100# 顯示100-300行的cat file | tail -n +200 | head -n 100# 從第200行開始,顯示100行(即200-299行)
    登錄後複製

    命令11:ps

    ps命令是用來查看系統中的進程所在的狀態

    ps -a:查看所有的進程(包含其他用戶的進程)

    [root@bunian ~]# ps -aPID TTYTIME CMD579 pts/000:00:00 ps
    登錄後複製

    ps -u:查看用戶及其他信息

    [root@bunian ~]# ps -uUSER PID %CPU %MEMVSZ RSS TTYSTAT START TIME COMMANDroot 6250.00.0 1554481832 pts/0R+ 01:25 0:00 ps -uroot13990.00.0 110208 664 tty1 Ss+Dec01 0:00 /sbin/agetty --noclear tty1 linuxroot14040.00.0 110208 640 ttyS0Ss+Dec01 0:00 /sbin/agetty --keep-baud 115200,38400,96root 188280.00.0 1167283268 pts/0Ss Dec19 0:00 -bash
    登錄後複製

    ps -x:顯示沒有控制終端的進程

    [root@bunian ~]# ps -xPID TTYSTAT TIME COMMAND1 ?Ss 1:36 /usr/lib/systemd/systemd --switched-root --system --deserialize 222 ?S0:00 [kthreadd]4 ?S<p>Linux系統中進程的5種常見狀態</p>
    登錄後複製
  • R:運行,進程正在運行或者在隊列中等待
  • S:中斷,進程處於休眠狀態中。當接受到某個條件後,即可脫離該狀態
  • D:不可中斷,在這種狀態下即使kill命令也無法將其中斷
  • Z:僵死,進程已經終止,但是進程描述符依然存在。若父進程調用wait()系統函數後將進程釋放
  • T:停止,進行收到停止信號後停止運行
  • 命令12:top

    top命令是用來動態地監控進程活動或者系統負載等信息的,它的功能可以看做是Windows系統中的“Windows任務管理器”。

    查詢進程的端口號:

    netstat -tunlp | grep 端口號   
    登錄後複製

    命令13:pidof

    該命令是用來查詢某個指定的服務進程的pid值

    pidof sshd  # 查看sshd服務的進程pid值
    登錄後複製

    命令14:kill、killall

    kill用於終止某個指定pid號的服務進程

    kill 18828  # 殺死pid爲18828的服務
    登錄後複製

    killall用來終止某個指定名稱的服務所對應的全部進程,參數爲進程名稱

    pidof httpd#查詢httpd服務的全部進程killall httpd # 終止http服務的全部進程
    登錄後複製

    命令15:ifconfig

    ifconfig命令主要是用來獲取網卡配置和系統的網絡狀態等信息,主要信息爲:

    • 網卡名稱
    • inet參數後面的IP地址
    • MAC地址
    • RX、TX的接收和發送數據等信息
    eth0: flags=4163<up>mtu 1500inet 10.0.8.2netmask 255.255.252.0broadcast 10.0.11.255inet6 fe80::5054:ff:fe95:2cdfprefixlen 64scopeid 0x20<link>ether 52:54:00:95:2c:dftxqueuelen 1000(Ethernet)RX packets 48350308bytes 13922587280 (12.9 GiB)RX errors 0dropped 0overruns 0frame 0TX packets 50364002bytes 30975667765 (28.8 GiB)TX errors 0dropped 0 overruns 0carrier 0collisions 0</up>
    登錄後複製

    命令16:history

    history命令主要是用來查看我們敲過的歷史命令。

    history# 查看全部歷史命令history 10# 查看最近的10條命令
    登錄後複製

    history可以與grep、tail配合使用進行條件過濾來查找我們需要的命令:

    history | grep dnf# 和dnf相關的命令history | tail -n 3 # 末尾3條命令
    登錄後複製

    清除歷史命令:

    history-d 50# 清除第100條history -c# 全部清除掉
    登錄後複製

    以上就是Linux常用命令的詳細內容,更多請關注本站其它相關文章!

    更新時間

    發表留言

    請注意,留言須先通過審核才能發佈。