阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

最最实用的30个Linux命令!

64次阅读
没有评论

共计 7525 个字符,预计需要花费 19 分钟才能阅读完成。

本文由 LinuxProbe.Com 团队成员 岳永 整理发布,点此报名Linux 培训

本文中将介绍一些实用又常用的 Linux 或 Unix 命令,这些是 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 的操作系统下一系列使用方便、又很实用的日常基本命令, 要是我们遗漏了哪些命令,欢迎留言交流!

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-25发表,共计7525字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中