<返回更多

Linux中20个高级命令

2022-08-17  走进IT学堂  
加入收藏

41. ifconfig命令

ifconfig用于配置内核常驻网络接口。它用于在启动时根据需要设置接口。

检查活动网络接口

[rumenz@local ~]$ ifconfig eth0      Link encap:Ethe.NET  HWaddr 40:2C:F4:EA:CF:0E            inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0           inet6 addr: fe80::422c:f4ff:feea:cf0e/64 Scope:Link           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1           RX packets:163843 errors:0 dropped:0 overruns:0 frame:0           TX packets:124990 errors:0 dropped:0 overruns:0 carrier:0           collisions:0 txqueuelen:1000           RX bytes:154389832 (147.2 MiB)  TX bytes:65085817 (62.0 MiB)           Interrupt:20 Memory:f7100000-f7120000 lo        Link encap:Local Loopback            inet addr:127.0.0.1  Mask:255.0.0.0           inet6 addr: ::1/128 Scope:Host           UP LOOPBACK RUNNING  MTU:16436  Metric:1           RX packets:78 errors:0 dropped:0 overruns:0 frame:0           TX packets:78 errors:0 dropped:0 overruns:0 carrier:0           collisions:0 txqueuelen:0           RX bytes:4186 (4.0 KiB)  TX bytes:4186 (4.0 KiB)

检查所有网络接口

使用-a显示所有接口的详细信息

[rumenz@local ~]$ ifconfig -aeth0      Link encap:Ethernet  HWaddr 40:2C:F4:EA:CF:0E            inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0           inet6 addr: fe80::422c:f4ff:feea:cf0e/64 Scope:Link           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1           RX packets:163843 errors:0 dropped:0 overruns:0 frame:0           TX packets:124990 errors:0 dropped:0 overruns:0 carrier:0           collisions:0 txqueuelen:1000           RX bytes:154389832 (147.2 MiB)  TX bytes:65085817 (62.0 MiB)           Interrupt:20 Memory:f7100000-f7120000 lo        Link encap:Local Loopback            inet addr:127.0.0.1  Mask:255.0.0.0           inet6 addr: ::1/128 Scope:Host           UP LOOPBACK RUNNING  MTU:16436  Metric:1           RX packets:78 errors:0 dropped:0 overruns:0 frame:0           TX packets:78 errors:0 dropped:0 overruns:0 carrier:0           collisions:0 txqueuelen:0           RX bytes:4186 (4.0 KiB)  TX bytes:4186 (4.0 KiB) virbr0    Link encap:Ethernet  HWaddr 0e:30:a3:3a:bf:03            inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0          UP BROADCAST MULTICAST  MTU:1500  Metric:1          RX packets:0 errors:0 dropped:0 overruns:0 frame:0          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0          collisions:0 txqueuelen:0           RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

禁用网卡

[rumenz@local ~]$ ifconfig eth0 down

启用网卡

[rumenz@local ~]$ ifconfig eth0 up

为网卡分配 IP 地址

指定 192.168.1.12 作为网卡 eth0 的 IP 地址。

[rumenz@local ~]$ ifconfig eth0 192.168.1.12

更改网卡eth0的子网掩码

[rumenz@local ~]$ ifconfig eth0 netmask 255.255.255.

更改网卡 eth0 的广播地址

[rumenz@local ~]$ ifconfig eth0 broadcast 192.168.1.255

为网卡 eth0 分配 IP 地址、网络掩码和广播

[rumenz@local ~]$ ifconfig eth0 192.168.1.12 netmask 255.255.255.0 broadcast 192.168.1.255

Note: 如果使用无线网络,则需要使用命令 iwconfig。欲了解更多 ifconfig 命令示例和用法,请阅读[15 个有用的 ifconfig 命令]。

42. netstat命令

netstat命令显示各种网络相关信息,如网络连接、路由表

列出所有网络端口

[rumenz@local ~]$ netstat -aActive UNIX domain sockets (servers and established)Proto RefCnt Flags       Type       State         I-Node   Pathunix  2      [ ACC ]     STREAM     LISTENING     741379   /run/user/user1/keyring-I5cn1c/gpgunix  2      [ ACC ]     STREAM     LISTENING     8965     /var/run/acpid.socketunix  2      [ ACC ]     STREAM     LISTENING     18584    /tmp/.X11-unix/X0unix  2      [ ACC ]     STREAM     LISTENING     741385   /run/user/user1/keyring-I5cn1c/sshunix  2      [ ACC ]     STREAM     LISTENING     741387   /run/user/user1/keyring-I5cn1c/pkcs11unix  2      [ ACC ]     STREAM     LISTENING     20242    @/tmp/dbus-ghtTjuPN46unix  2      [ ACC ]     STREAM     LISTENING     13332    /var/run/samba/winbindd_privileged/pipeunix  2      [ ACC ]     STREAM     LISTENING     13331    /tmp/.winbindd/pipeunix  2      [ ACC ]     STREAM     LISTENING     11030    /var/run/MySQLd/mysqld.sockunix  2      [ ACC ]     STREAM     LISTENING     19308    /tmp/ssh-qnZadSgJAbqd/agent.3221unix  2      [ ACC ]     STREAM     LISTENING     436781   /tmp/HotShotsunix  2      [ ACC ]     STREAM     LISTENING     46110    /run/user/ravisaive/pulse/nativeunix  2      [ ACC ]     STREAM     LISTENING     19310    /tmp/gpg-zfE9YT/S.gpg-agent....

列出所有 TCP 端口

[rumenz@local ~]$ netstat -atActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address           Foreign Address         State      tcp        0      0 localhost:mysql         *:*                     LISTEN     tcp        0      0 *:5901                  *:*                     LISTEN     tcp        0      0 *:5902                  *:*                     LISTEN     tcp        0      0 *:x11-1                 *:*                     LISTEN     tcp        0      0 *:x11-2                 *:*                     LISTEN     tcp        0      0 *:5938                  *:*                     LISTEN     tcp        0      0 localhost:5940          *:*                     LISTEN     tcp        0      0 ravisaive-OptiPl:domain *:*                     LISTEN     tcp        0      0 ravisaive-OptiPl:domain *:*                     LISTEN     tcp        0      0 localhost:ipp           *:*                     LISTEN     tcp        0      0 ravisaive-OptiPle:48270 ec2-23-21-236-70.c:http ESTABLISHEDtcp        0      0 ravisaive-OptiPle:48272 ec2-23-21-236-70.c:http TIME_WAIT  tcp        0      0 ravisaive-OptiPle:48421 bom03s01-in-f22.1:https ESTABLISHEDtcp        0      0 ravisaive-OptiPle:48269 ec2-23-21-236-70.c:http ESTABLISHEDtcp        0      0 ravisaive-OptiPle:39084 channel-ecmp-06-f:https ESTABLISHED...

显示所有端口的统计信息

[rumenz@local ~]$ netstat -sIp:    4994239 total packets received    0 forwarded    0 incoming packets discarded    4165741 incoming packets delivered    3248924 requests sent out    8 outgoing packets droppedIcmp:    29460 ICMP messages received    566 input ICMP message failed.    ICMP input histogram:        destination unreachable: 98        redirects: 29362    2918 ICMP messages sent    0 ICMP messages failed    ICMP output histogram:        destination unreachable: 2918IcmpMsg:        InType3: 98        InType5: 29362        OutType3: 2918Tcp:    94533 active connections openings    23 passive connection openings    5870 failed connection attempts    7194 connection resets received....

如果你不想将主机、端口和用户名解析为 netstat 的输出。

[rumenz@local ~]$ netstat -an

你可能需要不断获取 netstat 的输出,直到通过中断指令(ctrl+c)。

[rumenz@local ~]$ netstat -c

43. nslookup命令

一种网络实用程序,用于获取有关 Internet 服务器的信息。顾名思义,该实用程序通过查询来查找域的名称服务器信息DNS.

[rumenz@local ~]$ nslookup rumenz.com Server:  192.168.1.1 Address: 192.168.1.1#53 Non-authoritative answer: Name: rumenz.com Address: 50.16.67.239

查询邮件交换记录

[rumenz@local ~]$ nslookup -query=mx rumenz.com Server:  192.168.1.1 Address: 192.168.1.1#53 Non-authoritative answer: rumenz.com mail exchanger = 0 smtp.secureserver.net. rumenz.com mail exchanger = 10 mailstore1.secureserver.net. Authoritative answers can be found from:

查询名称服务器

[rumenz@local ~]$ nslookup -type=ns rumenz.com Server:  192.168.1.1 Address: 192.168.1.1#53 Non-authoritative answer: rumenz.com nameserver = ns3404.com. rumenz.com nameserver = ns3403.com. Authoritative answers can be found from:

查询 DNS 记录

[rumenz@local ~]$ nslookup -type=any rumenz.com Server:  192.168.1.1 Address: 192.168.1.1#53 Non-authoritative answer: rumenz.com mail exchanger = 10 mailstore1.secureserver.net. rumenz.com mail exchanger = 0 smtp.secureserver.net. rumenz.com nameserver = ns06.domaincontrol.com. rumenz.com nameserver = ns3404.com. rumenz.com nameserver = ns3403.com. rumenz.com nameserver = ns05.domaincontrol.com. Authoritative answers can be found from:

查询权限开始

[rumenz@local ~]$ nslookup -type=soa rumenz.com Server:  192.168.1.1 Address: 192.168.1.1#53 Non-authoritative answer: rumenz.com   origin = ns3403.hostgator.com   mail addr = dnsadmin.gator1702.hostgator.com   serial = 2012081102   refresh = 86400   retry = 7200   expire = 3600000   minimum = 86400 Authoritative answers can be found from:

查询端口号

更改要连接的端口号

[rumenz@local ~]$ nslookup -port 56 rumenz.comServer:  rumenz.comAddress: 50.16.76.239#53Name: 56Address: 14.13.253.12

44. dig命令

dig是一个查询工具DNSnameservers 获取有关主机地址、邮件交换、名称服务器和相关信息的信息。这个工具可以在任何 linux (Unix) 或macintosh OS X操作系统。最典型的用途dig是简单地查询单个主机。

[rumenz@local ~]$ dig rumenz.com; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> rumenz.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<

关闭注释行

[rumenz@local ~]$ dig rumenz.com +nocomments ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> rumenz.com +nocomments ;; global options: +cmd ;rumenz.com.   IN A rumenz.com.  14400 IN A 40.216.66.239 ;; Query time: 418 msec ;; SERVER: 192.168.1.1#53(192.168.1.1) ;; WHEN: Sat Jun 29 13:53:22 2013 ;; MSG SIZE  rcvd: 45

关闭来源段

[rumenz@local ~]$ dig rumenz.com +noauthority ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> rumenz.com +noauthority ;; global options: +cmd ;; Got answer: ;; ->>HEADER<

关闭附加段

[rumenz@local ~]$ dig  rumenz.com +noadditional ; <<>> DiG 9.9.2-P1 <<>> rumenz.com +noadditional;; global options: +cmd;; Got answer:;; ->>HEADER<

关闭统计段

[rumenz@local ~]$ dig rumenz.com +nostats ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> rumenz.com +nostats ;; global options: +cmd ;; Got answer: ;; ->>HEADER<

关闭结果段

[rumenz@local ~]$ dig rumenz.com +noanswer ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> rumenz.com +noanswer ;; global options: +cmd ;; Got answer: ;; ->>HEADER<

一次禁用所有部分

[rumenz@local ~]$ dig rumenz.com +noall ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> rumenz.com +noall ;; global options: +cmd

45. uptime命令

uptime命令能够打印系统总共运行了多长时间和系统的平均负载

[rumenz@local ~]$ uptime14:37:10 up  4:21,  2 users,  load average: 0.00, 0.00, 0.04

46. wall命令

管理员最重要的命令之一,wall向使用他们登录的每个人发送消息mesg权限设置为 yes。该消息可以作为参数给出wall,也可以发送到 wall 的标准输入。

[rumenz@local ~]$ wall "we will be going down for maintenance for one hour sharply at 03:30 pm"Broadcast message from root@localhost.localdomain (pts/0) (Sat Jun 29 14:44:02 2013): we will be going down for maintenance for one hour sharply at 03:30 pm

47. mesg命令

让你控制人们是否可以使用 write 命令,通过屏幕向你发送文本。

mesg [n|y]n - prevents the message from others popping up on the screen.y – Allows messages to Appear on your screen.

48. write命令

让你直接将文本发送到另一台 Linux 机器的屏幕,如果 mesg是y。

[rumenz@local ~]$ write ravisaive

49. talk命令

对write命令,talk命令可让你与登录用户交谈。

[rumenz@local ~]$ talk ravisaive

Note: 如果talk命令未安装,你可以随时apt或yum所需的包。

[rumenz@local ~]$ yum install talkOR[rumenz@local ~]$ apt-get install talk

50. w命令

什么命令w 看起来你很有趣吗?但实际上并非如此。这是一个命令,即使它只有一个字母长!命令 w 的组合uptime和who命令一个接一个地发出,按照这个顺序。

[rumenz@local ~]$ w15:05:42 up  4:49,  3 users,  load average: 0.02, 0.01, 0.00 USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT server   tty7     :0               14:06    4:43m  1:42   0.08s pam: gdm-passwo server   pts/0    :0.0             14:18    0.00s  0.23s  1.65s gnome-terminal server   pts/1    :0.0             14:47    4:43   0.01s  0.01s bash

51. rename命令

顾名思义,此命令重命名文件。rename 将通过替换文件名中的第一个匹配项来重命名指定的文件。

Give the file names a1, a2, a3, a4.....1213

只需键入命令。

rename a1 a0 a? rename a1 a0 a??

52. 命令:top

显示进程CPU.默认情况下,此命令会自动刷新并继续显示CPU除非给出中断指令,否则处理。

[rumenz@local ~]$ toptop - 14:06:45 up 10 days, 20:57,  2 users,  load average: 0.10, 0.16, 0.21Tasks: 240 total,   1 running, 235 sleeping,   0 stopped,   4 zombie%Cpu(s):  2.0 us,  0.5 sy,  0.0 ni, 97.5 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 stKiB Mem:   2028240 total,  1777848 used,   250392 free,    81804 buffersKiB Swap:  3905532 total,   156748 used,  3748784 free,   381456 cached  PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+ COMMAND                                                                                                            23768 ravisaiv  20   0 1428m 571m  41m S   2.3 28.9  14:27.52 firefox                                                                                                            24182 ravisaiv  20   0  511m 132m  25m S   1.7  6.7   2:45.94 plugin-containe                                                                                                    26929 ravisaiv  20   0  5344 1432  972 R   0.7  0.1   0:00.07 top                                                                                                                24875 ravisaiv  20   0  263m  14m  10m S   0.3  0.7   0:02.76 lxterminal                                                                                                             1 root      20   0  3896 1928 1228 S   0.0  0.1   0:01.62 init                                                                                                                   2 root      20   0     0    0    0 S   0.0  0.0   0:00.06 kthreadd                                                                                                               3 root      20   0     0    0    0 S   0.0  0.0   0:17.28 ksoftirqd/0                                                                                                            5 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kworker/0:0H                                                                                                           7 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kworker/u:0H                                                                                                           8 root      rt   0     0    0    0 S   0.0  0.0   0:00.12 migration/0                                                                                                            9 root      20   0     0    0    0 S   0.0  0.0   0:00.00 rcu_bh                                                                                                                10 root      20   0     0    0    0 S   0.0  0.0   0:26.94 rcu_sched                                                                                                             11 root      rt   0     0    0    0 S   0.0  0.0   0:01.95 watchdog/0                                                                                                            12 root      rt   0     0    0    0 S   0.0  0.0   0:02.00 watchdog/1                                                                                                            13 root      20   0     0    0    0 S   0.0  0.0   0:17.80 ksoftirqd/1                                                                                                           14 root      rt   0     0    0    0 S   0.0  0.0   0:00.12 migration/1                                                                                                           16 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kworker/1:0H                                                                                                          17 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 cpuset                                                                                                                18 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 khelper                                                                                                               19 root      20   0     0    0    0 S   0.0  0.0   0:00.00 kdevtmpfs                                                                                                             20 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 netns                                                                                                                 21 root      20   0     0    0    0 S   0.0  0.0   0:00.04 bdi-default                                                                                                           22 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kintegrityd                                                                                                           23 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kblockd                                                                                                               24 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 ata_sff

53. mkfs.ext4命令

此命令创建一个新的ext4指定设备上的文件系统,如果在此命令后跟随错误的设备,整个块将被擦除和格式化,因此建议不要运行此命令,除非并且直到你明白你在做什么。

Mkfs.ext4 /dev/sda1 (sda1 block will be formatted)mkfs.ext4 /dev/sdb1 (sdb1 block will be formatted)

54. 命令:vi/emacs/nano

vi,emacs,nano是 Linux 中一些最常用的编辑器。它们通常用于编辑文本、配置、文件。

vi 编辑器

[rumenz@local ~]$ touch a.txt (creates a text file a.txt) [rumenz@local ~]$ vi a.txt (open a.txt with vi editor)

[按i 进入插入模式,否则你将无法输入任何内容]

echo "Hello"  (your text here for the file)
  1. alt+x(退出插入模式,记得在最后一个字母之间保留一些空格。
  2. ctrl+x命令或你的最后一句话将被删除)。
  3. :wq!(保存文件,用当前文本,记住!是覆盖)。

nano编辑器

[rumenz@local ~]$ nano a.txt (open a.txt file to be edited with nano)
edit, with the content, required

ctrl +x(关闭编辑器)。它将显示输出为:

Save modified buffer (ANSWERING "No" WILL DESTROY CHANGES) ?                     Y Yes  N No           ^C Cancel

点击 y 到 yes 并输入文件名,你就完成了。

55. 命令:rsync

Rsync复制文件并有一个-P切换进度条。所以如果你安装了 rsync,你可以使用一个简单的别名。

alias cp='rsync -aP'

现在尝试在终端中复制一个大文件并查看包含剩余项目的输出,类似于进度条。

此外,保持和维护备份是系统管理员需要执行的最重要和最无聊的工作之一。Rsync 是一个非常好的工具(存在,还有其他几个)用于在终端中创建和维护备份。

[rumenz@local ~]$ rsync -zvr IMG_5267 copy=33 copy=ok.jpg ~/Desktop/ sending incremental file list IMG_5267 copy=33 copy=ok.jpg sent 2883830 bytes  received 31 bytes  5767722.00 bytes/sec total size is 2882771  speedup is 1.00

Note:-z用于压缩,-v 用于详细,-r 用于递归。

56. free命令

跟踪内存和资源与管理员执行的任何其他任务一样重要,并且free命令来拯救这里。

内存使用现状

[rumenz@local ~]$ free             total       used       free     shared    buffers     cachedMem:       2028240    1788272     239968          0      69468     363716-/+ buffers/cache:    1355088     673152Swap:      3905532     157076    3748456

> 以 KB、MB 或 GB 为单位的调谐输出

[rumenz@local ~]$ free -b             total       used       free     shared    buffers     cachedMem:    2076917760 1838272512  238645248          0   71348224  372670464-/+ buffers/cache: 1394253824  682663936Swap:   3999264768  160845824 3838418944
[rumenz@local ~]$ free -k             total       used       free     shared    buffers     cachedMem:       2028240    1801484     226756          0      69948     363704-/+ buffers/cache:    1367832     660408Swap:      3905532     157076    3748456
[rumenz@local ~]$ free -m             total       used       free     shared    buffers     cachedMem:          1980       1762        218          0         68        355-/+ buffers/cache:       1338        641Swap:         3813        153       3660
[rumenz@local ~]$ free -g             total       used       free     shared    buffers     cachedMem:             1          1          0          0          0          0-/+ buffers/cache:          1          0Swap:            3          0          3

人类可读格式展示

[rumenz@local ~]$ free -h             total       used       free     shared    buffers     cachedMem:          1.9G       1.7G       208M         0B        68M       355M-/+ buffers/cache:       1.3G       632MSwap:         3.7G       153M       3.6G

定期检查输出

[rumenz@local ~]$ free -s 3             total       used       free     shared    buffers     cachedMem:       2028240    1824096     204144          0      70708     364180-/+ buffers/cache:    1389208     639032Swap:      3905532     157076    3748456             total       used       free     shared    buffers     cachedMem:       2028240    1824192     204048          0      70716     364212-/+ buffers/cache:    1389264     638976Swap:      3905532     157076    3748456

57. mysqldump命令

你应该已经从该命令的名称中了解了该命令的实际含义。mysqldump命令将所有或特定的数据库数据转储(备份)到给定的文件中。例如,

[rumenz@local ~]$ mysqldump -u root -p --all-databases > /home/server/Desktop/backupfile.sql

Note:mysqldump需要运行 mysql 并正确密码进行授权。我们已经介绍了一些有用的 mysqldump使用 mysqldump命令进行数据库备份的命令

58. mkpasswd命令

制作指定长度的难以猜测的随机密码。

[rumenz@local ~]$ mkpasswd -l 10zI4+Ybqfx9
[rumenz@local ~]$ mkpasswd -l 20 w0Pr7aqKk&hmbmqdrlmk

Note:-l 10生成一个随机密码10字符而-l 20生成字符密码20,它可以设置为任何以获得所需的结果。此命令非常有用,通常以脚本语言实现以生成随机密码。你可能需要yum或aptexpect' 包来使用这个命令。

[root@rumenz ~]# yum install expect OR[root@rumenz ~]# apt-get install expect

59. paste命令

使用行合并两个或多个文本文件

[rumenz@local ~] cat rumenz1.txt                  #rumenz1.txt文件的内容  123[rumenz@local ~] cat rumenz2.txt                  #rumenz2.txt   文件的内容  4[rumenz@local ~] cat rumenz3.txt                  #rumenz3.txt文件的内容  56[rumenz@local ~] paste rumenz1.txt rumenz2.txt  rumenz3.txt   123456

60. lsof命令

lsof代表 list open files 并显示你的系统当前打开的所有文件。找出哪些进程使用某个文件或显示单个进程的所有文件非常有用。

[rumenz@local ~]$ lsof COMMAND     PID   TID            USER   FD      TYPE     DEVICE SIZE/OFF       NODE NAMEinit          1                  root  cwd       DIR        8,1     4096          2 /init          1                  root  rtd       DIR        8,1     4096          2 /init          1                  root  txt       REG        8,1   227432     395571 /sbin/init...

 

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>