逐一介紹如何使用這些命令,附有示例。
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@tecmint ~]$ 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(版本)外,該命令沒有其他參數。
4.who命令
who命令僅僅返回用戶名稱、日期、時間和主機信息。who命令類似w命令。不像w命令,who並不輸出用戶執行的操作這一信息。不妨具体看看who和w這兩個命令之間的區別。
- # who
- tecmint pts/0 2012-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”命令。
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鍵退出,這會自動保存設置。
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
- Installing 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命令
將文件從來源拷貝到目的地,保留同一種模式。
覆蓋文件之前系統會提示你。
11.mv命令
將fileA更名為fileB。 -i選項會在覆蓋前提示。如果文件已經存在,會要求予以確認。
12.cat命令
cat命令用來同時查看多個文件。
要是某個文件在一個屏幕/頁面顯示不了,你可以使用cat命令來合並more和less命令,查看文件內容。
- # cat install.log | less
- # cat install.log | more
13.cd命令(更改目錄)
借助cd命令(更改目錄),它會進入到fileA目錄。
14.pwd命令(輸出工作目錄)
pwd命令會返回當前的工作目錄。
15.sort命令
以升序排序一行行文本文件。如果使用-r選項,就會以降序排序。
- #sort fileA.txt
- #sort -r fileA.txt
16.vi命令
對大多數類似UNIX的操作系統而言,vi是最流行的文本編輯器。下面例子使用-R選項,打開只讀方式的文件。按“:q”即可退出vi窗口。
17.ssh命令(安全外殼)
ssh命令用來登錄入到遠程主機。比如說,下面這個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
- OR
- # /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命令用來清除或刪除文件,並不提示予以確認。
使用-i選項即可在刪除之前予以確認。使用“-r”和“-f”這兩個選項將强行刪除文件,並不予以確認。
- # rm -i test.txt
- rm: remove regular file `test.txt'?
30.mkdir命令
mkdir命令用來在Linux下創建目錄。
這是類似Linux/Unix的操作系統下一系列使用方便、又很實用的日常基本命令。
...