最最實用的30個Linux命令!

大雄45發表於2022-12-01

本文中將介紹一些實用又常用的Linux或Unix ,這些是 管理員們平常使用的 。本文不是什麼完整列表,而是簡要地列出了需要時派得上用場的命令,下面開始逐一介紹如何使用這些命令並附有示例。

最最實用的30個Linux命令!最最實用的30個Linux命令!

1.uptime 命令

在Linux中,uptime命令顯示了你的系統執行了多久以及目前登入的使用者有多少,另外還顯示了間隔1分鐘、5分鐘和15分鐘的負載平均值。

# uptime
 08:16:26 up 22 min,  1 user,  load average: 0.00, 0.03, 0.22

檢查uptime版本

除了uptime(正常執行時間)和version(版本)外,uptime命令沒有其他選項。如果時間不到1天,它只給出hours:mins這種形式的資訊。

[tecmint@linuxprobe ~]$ uptime -V
 procps version 3.2.8

2.w 命令

該命令會顯示目前登入的使用者及其程式,另外還會顯示負載平均值。此外,它還顯示了登入名稱、tty名稱、遠端主機、登入時間、閒置時間、JCPU、PCPU、命令和程式。

# w
08:27:44 up 34 min,  1 user,  load average: 0.00, 0.00, 0.08
USER    TTY    FROM     LOGIN@   IDLE   JCPU   PCPU WHAT
tecmint  pts/0    192.168.50.1     07:59    0.00s  0.29s  0.09s w 可用的選項
 -h:不顯示標題。
 -s:不顯示JCPU和PCPU。
 -f:不顯示欄位資訊。
 -V:(大寫V)-顯示版本。

3.users 命令

users命令顯示了目前已登入的使用者,除了help(幫助)和version(版本)外,該命令沒有其他引數。

# users
 Tecmint

4.who 命令

who命令僅僅返回使用者名稱稱、日期、時間和主機資訊;who命令類似w命令,不像w命令,who並不輸出使用者執行的操作這一資訊,不妨具體看看who和w這兩個命令之間的區別。

# who
 tecmint  pts/0        2010-09-18 07:59 (192.168.50.1)
# w
 08:43:58 up 50 min,  1 user,  load average: 0.64, 0.18, 0.06
 USER    TTY    FROM    LOGIN@   IDLE   JCPU   PCPU WHAT
 tecmint  pts/0    192.168.50.1     07:59    0.00s  0.43s  0.10s w who命令的選項
 -b:顯示上一次系統重啟日期和時間。
 -r:顯示當前的執行級別。
 -a,–all:顯示累積的所有資訊。

5.whoami 命令

whoami命令輸出當前使用者的姓名;你還可以使用“who am i”命令顯示當前使用者,如果你以根使用者身份使用sudo命令登入,“whoami”命令返回根使用者是當前使用者,如果你想知道登入的使用者具體是哪個,使用“who am i”命令。

# whoami
 tecmint

6.ls 命令

ls命令顯示了人類可讀格式的檔案列表。

# ls -l
 total 114
 dr-xr-xr-x.   2 root root  4096 Sep 18 08:46 bin
 dr-xr-xr-x.   5 root root  1024 Sep  8 15:49 boot

按照上一次修改時間排序檔案。

# ls -ltr
 total 40
 -rw-r--r--. 1 root root  6546 Sep 17 18:42 install.log.syslog
 -rw-r--r--. 1 root root 22435 Sep 17 18:45 install.log
 -rw-------. 1 root root  1003 Sep 17 18:45 anaconda-ks.cfg

7.crontab 命令

可使用crontab命令和-l選項,列出當前使用者的計劃任務。

# crontab -l
 00 10 * * * /bin/ls >/ls.txt

可以使用-e選項編輯crontab,在下面例子中,將用VI編輯工具開啟計劃任務,進行必要的更改,按:wq鍵退出,這會自動儲存設定。

# crontab -e

8.less 命令

less命令允許快速檢視檔案;你可以向上和向下翻頁,按“q”即可退出less視窗。

# less install.log
 Installing setup-2.8.14-10.el6.noarch
 warning: setup-2.8.14-10.el6.noarch: Header V3 RSA/SHA256 Signature, key ID c105b9de: NOKEY
 Installing filesystem-2.4.30-2.1.el6.i686
 Installing ca-certificates-2010.63-3.el6.noarch
 Installing xml-common-0.6.3-32.el6.noarch
 nstalling tzdata-2010l-1.el6.noarch
 Installing iso-codes-3.16-2.el6.noarch

9.more 命令

more命令允許快速檢視檔案,並以百分比的形式顯示詳細資訊,你可以向上和向下翻頁,按“q”即可退出more視窗。

# more install.log
 Installing setup-2.8.14-10.el6.noarch
 warning: setup-2.8.14-10.el6.noarch: Header V3 RSA/SHA256 Signature, key ID c105b9de: NOKEY
 Installing filesystem-2.4.30-2.1.el6.i686
 Installing ca-certificates-2010.63-3.el6.noarch
 Installing xml-common-0.6.3-32.el6.noarch
 Installing tzdata-2010l-1.el6.noarch
 Installing iso-codes-3.16-2.el6.noarch
 --More--(10%)

10.cp 命令

將檔案從來源複製到目的地,保留同一種模式。

# cp -p fileA fileB

覆蓋檔案之前系統會提示你。

# cp -i fileA fileB

11.mv 命令

將fileA更名為fileB; -i選項會在覆蓋前提示;如果檔案已經存在,會要求予以確認。

# mv -i fileA fileB

12.cat 命令

cat命令用來同時檢視多個檔案。

# cat fileA fileB

要是某個檔案在一個螢幕/頁面顯示不了,你可以使用cat命令來合併more和less命令,檢視檔案內容。

# cat install.log | less
      or
# cat install.log | more

13.cd 命令(切換目錄)

藉助cd命令(切換目錄),它會進入到fileA目錄。

# cd /fileA

14.pwd 命令(輸出工作目錄)

pwd命令會返回當前的工作目錄。

# pwd
/root

15.sort 命令

以升序排序一行行文字檔案,如果使用-r選項,就會以降序排序。

#sort fileA.txt
#sort -r fileA.txt

16.vi 命令

對大多數類似UNIX的作業系統而言,vi是最流行的文字編輯器,下面例子使用-R選項,開啟只讀方式的檔案,按“:q”即可退出vi視窗。

# vi -R /etc/shadows

17.ssh 命令(安全外殼)

ssh命令用來登入入到遠端主機;比如說,下面這個ssh例子會使用使用者作為narad,連線到主機(192.168.50.2)。

# ssh narad@192.168.50.2

想檢查ssh的版本,使用選項-V(大寫),即可顯示ssh的版本。

# ssh -V
OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010

18.ftp或sftp 命令

ftp或sftp命令用來連線到遠端ftp主機;ftp是指檔案傳輸協議,而sftp是安全檔案傳輸協議。比如說,下列命令將連線到ftp主機(192.168.50.2)。

# ftp 192.168.50.2
# sftp 192.168.50.2

正如可以使用mput將多個檔案上傳到到遠端主機,我們同樣可以使用mget從遠端主機下載多個檔案。

# ftp > mput *.txt
# ftp > mget *.txt

19.service 命令

service命令呼叫位於/etc/init.d/目錄處的 ,並執行 。有兩種方法可以啟動任何服務;比如說,我們使用service命令,啟動名為httpd的服務。

# service httpd start
# /etc/init.d/httpd start

20.free 命令

free命令顯示了閒置記憶體、總記憶體和交換內等方面的資訊,單位是位元組。

# free
 total           used            free         shared     buffers    cached
 Mem:       1030800     735944     294856          0      51648     547696
 -/+ buffers/cache:     136600     894200
 Swap:      2064376          0    2064376

使用-t選項的free命令顯示了已使用的總記憶體和可以使用的記憶體,單位是位元組。

# free  -t
 total       used       free     shared    buffers     cached
 Mem:       1030800     736096     294704          0      51720     547704
 -/+ buffers/cache:     136672     894128
 Swap:      2064376          0    2064376
 Total:     3095176     736096    2359080

21.top 命令

top命令顯示了系統的處理器活動,還顯示了由核心實時管理的任務,它會顯示所使用的處理器和記憶體;如果使用帶“u”選項的top命令,這會顯示特定的使用者程式詳細資訊,如下所示:按“O”(大寫)即可按你希望的方式來排序,按“q”即可退出top螢幕。

# top -u tecmint top - 11:13:11 up  3:19,  2 users,  load average: 0.00, 0.00, 0.00
 Tasks: 116 total,   1 running, 115 sleeping,   0 stopped,   0 zombie
 Cpu(s):  0.0%us,  0.3%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
 Mem:   1030800k total,   736188k used,   294612k free,    51760k buffers
 Swap:  2064376k total,        0k used,  2064376k free,   547704k cached
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 1889 tecmint   20   0 11468 1648  920 S  0.0  0.2   0:00.59 sshd
 1890 tecmint   20   0  5124 1668 1416 S  0.0  0.2   0:00.44 bash
 6698 tecmint   20   0 11600 1668  924 S  0.0  0.2   0:01.19 sshd
 6699 tecmint   20   0  5124 1596 1352 S  0.0  0.2   0:00.11 bash

22.tar 命令

tar命令用於壓縮Linux下的檔案和資料夾;比如說,下面這個命令將為/home目錄建立一個壓縮存檔,檔名為archive-name.tar。

# tar -cvf archive-name.tar /home

想解壓縮tar壓縮存檔檔案,請使用如下所示的選項。

# tar -xvf archive-name.tar

23.grep 命令

grep可搜尋檔案中的特定字串;只顯示/etc/passwd檔案中的tecmint使用者。我們可以使用-i選項,忽略大小寫。

# grep tecmint /etc/passwd
 tecmint:x:500:500::/home/tecmint:/bin/bash

24.find 命令

find命令用來搜尋檔案、字串和目錄;在下面這個例子中,find命令搜尋“/”分割槽中的tecmint單詞,並返回輸出。

# find / -name tecmint
 /var/spool/mail/tecmint
 /home/tecmint
 /root/home/tecmint

25.lsof 命令

lsof意味著“列出所有開啟的檔案”;下面,lsof命令列出了tecmint使用者開啟的所有檔案。

# lsof -u tecmint 
 COMMAND  PID    USER   FD   TYPE     DEVICE SIZE/OFF   NODE NAME  
 sshd    1889 tecmint  cwd    DIR      253,0     4096      2 /  
 sshd    1889 tecmint  txt    REG      253,0   532336 298069 /usr/sbin/sshd  
 sshd    1889 tecmint  DEL    REG      253,0          412940 /lib/libcom_err.so.2.1  
 sshd    1889 tecmint  DEL    REG      253,0          393156 /lib/ld-2.12.so  
 sshd    1889 tecmint  DEL    REG      253,0          298643 /usr/lib/libcrypto.so.1.0.0  
 sshd    1889 tecmint  DEL    REG      253,0          393173 /lib/libnsl-2.12.so  
 sshd    1889 tecmint  DEL    REG      253,0          412937 /lib/libkrb5support.so.0.1  
 sshd    1889 tecmint  DEL    REG      253,0          412961 /lib/libplc4.so

26.last 命令

藉助last命令,我們就能觀察使用者在系統中的活動;該命令還可以以正常使用者的身份來執行,它會顯示完整的使用者資訊,比如終端、時間、日期、系統重啟或啟動以及核心版本,這是用來排查故障的實用命令。

# last 
 tecmint  pts/1        192.168.50.1     Tue Sep 18 08:50   still logged in  
 tecmint  pts/0        192.168.50.1     Tue Sep 18 07:59   still logged in  
 reboot   system boot  2.6.32-279.el6.i Tue Sep 18 07:54 - 11:38  (03:43)  
 root     pts/1        192.168.50.1     Sun Sep 16 10:40 - down   (03:53)  
 root     pts/0        :0.0             Sun Sep 16 10:36 - 13:09  (02:32)  
 root     tty1         :0               Sun Sep 16 10:07 - down   (04:26)  
 reboot   system boot  2.6.32-279.el6.i Sun Sep 16 09:57 - 14:33  (04:35)  
 narad    pts/2        192.168.50.1     Thu Sep 13 08:07 - down   (01:15)

你可以使用帶使用者名稱的last,瞭解特定使用者的活動,如下所示。

# last tecmint 
 tecmint  pts/1        192.168.50.1     Tue Sep 18 08:50   still logged in  
 tecmint  pts/0        192.168.50.1     Tue Sep 18 07:59   still logged in  
 tecmint  pts/1        192.168.50.1     Thu Sep 13 08:07 - down   (01:15)  
 tecmint  pts/4        192.168.50.1     Wed Sep 12 10:12 - 12:29  (02:17)

27.ps 命令

ps命令顯示了系統中執行的程式方面的資訊;下面這個例子只顯示init程式。

# ps -ef | grep init
 root         1     0  0 07:53 ?        00:00:04 /sbin/init
 root      7508  6825  0 11:48 pts/1    00:00:00 grep init

28.kill 命令

使用kill命令來終結程式;先使用ps命令找到程式id,如下所示,然後使用kill -9命令,終止程式。

# ps -ef | grep init
 root         1     0  0 07:53 ?        00:00:04 /sbin/init
 root      7508  6825  0 11:48 pts/1    00:00:00 grep init
# kill- 9 7508

29.rm 命令

rm命令用來清除或刪除檔案,並不提示予以確認。

# rm filename

使用-i選項即可在刪除之前予以確認;使用“-r”和“-f”這兩個選項將強行刪除檔案,並不予以確認。

# rm -i test.txt
rm: remove regular file `test.txt'?

30.mkdir 命令

mkdir命令用來在Linux下建立目錄。

# mkdir directoryname

這是類似Linux/Unix的作業系統下一系列使用方便、又很實用的日常基本命令,要是我們遺漏了哪些命令,歡迎留言交流!

原文來自:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2898792/,如需轉載,請註明出處,否則將追究法律責任。

相關文章