网站搜索

对系统管理员有用的 30 个 Linux 命令


在本文中,我们将回顾 Linux 系统管理员在日常生活中使用的一些有用且常用的 Linux 或 Unix 命令。

这并不完整,但它是一个紧凑的命令列表,可供需要时参考。让我们通过示例一一开始如何使用这些命令。

1. 正常运行时间命令

在Linux中,uptime命令显示系统运行的时间和当前登录的用户数量,还显示系统15和的平均负载15 分钟间隔。

uptime

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

检查正常运行时间版本

正常运行时间命令除了正常运行时间版本之外没有其他选项。如果少于1天,它仅以小时:分钟:秒为单位提供信息。

uptime -V
procps version 3.2.8

2.W命令

w 命令将显示当前登录的用户及其进程,同时显示平均负载登录名tty 名称远程主机登录时间空闲时间JCPUPCPU、命令和进程。

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:(大写字母)- 显示版本。

3. 用户命令

Users命令显示当前登录的用户。该命令除了帮助和版本之外没有其他参数。

users

tecmint

4. 谁指挥

who 命令仅返回用户名日期时间主机信息。 who 命令类似于 w 命令。与 w 命令不同,who 不会打印用户正在做什么。让我们举例说明并看看 whow 命令之间的区别。

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

谁命令选项

  • -b:显示上次系统重新启动的日期和时间。
  • -r:显示当前 runlet。
  • -a, –all:累积显示所有信息。

5. Whoami命令

在 Linux 中,whoami 命令用于将当前登录的用户名打印到 Linux 系统中。如果您使用 sudo 命令“whoami”以 root 身份登录,则返回 root 作为当前用户。

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

有关 ls 命令的更多示例,请查看我们的文章:

  • Linux 中的 10 个 lsof 命令示例
  • 每个 Linux 用户都应该知道的 7 个奇怪的“ls”命令技巧
  • 如何按上次修改日期和时间对“ls”命令的输出进行排序

7. crontab命令

使用 crontab 命令和 -l 选项列出当前用户的计划作业。

crontab -l

00 10 * * * /bin/ls >/ls.txt

使用 -e 选项编辑您的crontab。在下面的示例中,将在VI编辑器中打开计划作业。进行必要的更改并退出按自动保存设置的 :wq 键。

crontab -e

有关 Linux Cron 命令的更多示例,请阅读我们之前的文章:

  • Linux 中的 11 个 Cron 调度任务示例
  • 如何在 Linux 上创建和管理 Cron 作业

8. 减少命令

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. 更多命令

更多命令允许快速查看文件并以百分比显示详细信息。您可以向上和向下翻页。按“q”退出更多窗口。

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 命令将文件从源复制到目标,并保留相同的模式。

cp -p fileA fileB

在覆盖文件之前,系统会提示您。

cp -i fileA fileB

11. MV命令

mv 命令使用-i选项将fileA重命名为fileB,这会在覆盖之前提示确认。如果已经存在,请确认。

mv -i fileA fileB

12.猫命令

cat命令用于同时查看多个文件。

cat fileA fileB

如果文件不适合单个屏幕/页面,您可以将 moreless 命令与 cat 命令结合起来查看文件内容。

cat install.log | less

# cat install.log | more

有关 Linux、cat 命令的更多示例,请阅读我们关于 Linux 中的 13 个基本 Cat 命令示例的文章。

13. cd命令(更改目录)

使用 cd 命令(更改目录或切换目录),它将转到 fileA 目录。

cd /fileA

14. pwd命令(打印工作目录)

pwd 命令返回当前工作目录。

pwd

/root

15. 排序命令

sort 命令用于按升序对文本文件的行进行排序。使用 -r 选项将按降序排序。

sort fileA.txt

# sort -r fileA.txt

16.VI命令

Vi 是大多数类 UNIX 操作系统中最流行的文本编辑器。下面的示例使用 -R 选项以只读方式打开文件。按“:q”退出 vi 窗口。

vi -R /etc/shadows

要了解有关 vi 编辑器的更多信息,请阅读我们的文章:

  • 学习有用的“Vi/Vim”编辑器提示和技巧
  • 为每个 Linux 管理员提供的 8 个有趣的“Vi/Vim”编辑器提示和技巧
  • 如何在 Linux 系统中安装最新的 Vim 编辑器

17.SSH命令(安全外壳)

SSH命令用于登录远程主机。例如,以下 ssh 命令将使用用户 Narad 连接到远程主机 (192.168.50.2)。

ssh [email 

要检查 ssh 的版本,请使用选项 -V (大写)显示 ssh 的版本。

ssh -V

OpenSSH_8.2p1 Ubuntu-4ubuntu0.3, OpenSSL 1.1.1f  31 Mar 2020

要了解有关 SSH 的更多信息,请阅读我们的文章:

  • 如何保护和强化 OpenSSH 服务器
  • 如何在 Linux 中设置自定义 SSH 警告横幅和 MOTD
  • 如何在 Linux 中设置 SSH 无密码登录 [3 个简单步骤]

18.Ftp或sftp命令

ftpsftp 命令用于连接到远程 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. Systemctl命令

Systemctl命令是一个systemd管理工具,用于管理服务、检查运行状态、启动和启用服务以及使用配置文件。

systemctl start httpd.service
systemctl enable httpd.service
systemctl status httpd.service

20.自由指挥

free 命令显示可用总内存交换内存信息(以字节为单位)。

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

Free 使用 -t 选项显示已使用和可用的总内存(以字节为单位)。

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 命令显示系统的处理器活动,还实时显示内核管理的任务。它将显示正在使用处理器内存

使用带有 u 的 top 命令,该选项将显示特定的用户进程详细信息,如下所示。按“O”(大写字母)根据您的需要进行排序。按“q”退出顶部屏幕。

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

有关 top 命令的更多信息,我们已经编制了 Linux 中 12 个 TOP 命令示例的列表。

22. 焦油命令

tar 命令用于在 Linux 中压缩文件和文件夹。例如,以下命令将为 /home 目录创建一个存档,文件名为 archive-name.tar

tar -cvf archive-name.tar /home

要提取 tar 存档文件,请使用以下选项。

tar -xvf archive-name.tar

为了了解有关 tar 命令的更多信息,我们在 Linux 中的 18 Tar 命令示例中创建了有关 tar 命令的完整操作指南

23.Grep命令

grep 命令在文件中搜索给定的字符串。仅从 /etc/passwd 文件中显示 howtoing 用户。我们可以使用 -i 选项来忽略大小写。

grep tecmint /etc/passwd

tecmint:x:500:500::/home/tecmint:/bin/bash

24. 查找命令

Find 命令用于搜索文件字符串目录。下面的 find 命令示例在“/”分区中搜索 howtoing 单词并返回输出。

find / -name tecmint

/var/spool/mail/tecmint
/home/tecmint
/root/home/tecmint

有关 Linux find 命令示例的完整指南可在 35 个 Linux Find 命令实用示例中找到。

25.lsof命令

lsof 表示所有打开文件的列表。 lsof 下面是用户 howtoing 打开的所有文件的命令列表。

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

有关更多 lsof 命令示例,请访问 Linux 中的 10 个 lsof 命令示例。

26.最后一个命令

通过最后一个命令,我们可以观察用户在系统中的活动。普通用户也可以执行该命令。它将显示完整的用户信息,例如终端时间日期系统重新启动启动、<内核版本。一个有用的故障排除命令。

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)

您可以将lastusername结合使用来了解特定用户的活动,如下所示。

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命令终止进程。首先,使用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 操作系统中日常使用的方便的基本命令。如果我们错过了,请通过我们的评论框分享。