Linux课程笔记 Day06 命令总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux课程笔记 Day06 命令总结相关的知识,希望对你有一定的参考价值。

 

scp

【使用权限】

         所有使用者

【语法】

         scp [参数] [原路径] [目标路径]

【功能说明】

         scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令。linux的scp命令可以在linux服务器之间复制文件和目录。

【参数】

-1  强制scp命令使用协议ssh1 

-2  强制scp命令使用协议ssh2 

-4  强制scp命令只使用IPv4寻址 

-6  强制scp命令只使用IPv6寻址 

-B  使用批处理模式(传输过程中不询问传输口令或短语) 

-C  允许压缩。(将-C标志传递给ssh,从而打开压缩功能) 

-p 保留原文件的修改时间,访问时间和访问权限。 

-q  不显示传输进度条。 

-r  递归复制整个目录。 

-v 详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。  

-c cipher  以cipher将数据传输进行加密,这个选项将直接传递给ssh。  

-F ssh_config  指定一个替代的ssh配置文件,此参数直接传递给ssh。 

-i identity_file  从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。   

-l limit  限定用户所能使用的带宽,以Kbit/s为单位。    

-o ssh_option  如果习惯于使用ssh_config(5)中的参数传递方式,  

-P port  注意是大写的P, port是指定数据传输用到的端口号  

-S program  指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。

 

【实例】

[[email protected] ~]# scp test2.sun.txt 192.168.1.4:/test2

The authenticity of host ‘192.168.1.4 (192.168.1.4)‘ can‘t be established.

RSA key fingerprint is d3:1b:26:6c:bc:f2:af:14:cc:6a:bb:0c:13:53:59:be.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added ‘192.168.1.4‘ (RSA) to the list of known hosts.

[email protected]‘s password:

test2.sun.txt                                                                                                                         100%    0     0.0KB/s   00:00   

[[email protected] ~]# scp -r scripts  oldboy.txt 192.168.1.4:/test2

[email protected]‘s password:

sh01.sh                       100%   49     0.1KB/s   00:00   

sh04.sh                       100%  164     0.2KB/s   00:00   

sh02.sh                        100%  147     0.1KB/s   00:00   

sh03.sh                        100%  315     0.3KB/s   00:00  

 

[[email protected] test2]# ll    #test3的ip地址是192.168.1.4

总计 8

-rw-r--r-- 1 root root   45 08-20 06:06 oldboy.txt

drwxr-xr-x 3 root root 4096 08-20 06:06 scripts

-rw-r--r-- 1 root root    0 08-20 06:04 test2.sun.txt

 

 

 

wget

【使用权限】

         所有使用者

【语法】

         wget                  [参数列表]       URL

【功能说明】

         一个从网络上自动下载的自由工具,支持通过HTTP、HTTPS、FTP三种协议下载,并可以使用HTTP代理

(1)       支持断点下载功能

(2)       同时支持FTP和HTTP下载方式

(3)       支持代理服务器

(4)       设置方便简单

(5)       程序小,完全免费

【参数】

1. 下载整个HTTP或FTP站点

-x:会强制建立与服务器一模一样的目录

-nd:服务器上所有下载的内容加到本地目录

-r:下载服务器上所有的目录和文件,并下载所有指向的地址

-l:指定下载的层数

-m:制作站点镜像

 

2. 断点续传

-c:表示自动断点续传

-t:表示重试次数,-t 0表示无穷次重试

-T:表示超时等待

 

3. 批量下载

-i:如果有多个文件要下载,可以将每个文件的URL写进一个文件,然后用命令wget  -i download.txt批量下载

 

4. 选择性的下载

-reject=LIST:可以接受的文件类型

-accept=LIST:拒绝接受的文件类型

wget  -m  -reject=gif  http://target.web.site/subdirectory

 

5. 密码和认证

-http-user=USER设置HTTP用户

-http-passwd=PASS设置HTTP密码

wget只能处理利用用户名和密码限制访问的网站

对于需要证书做认证的网站,只能利用其它工具,比如curl

 

 6. 利用代理服务器下载

如果用户的网络需要通过代理服务器,那么可以让wget通过代理服务器进行文件的下载。此时,需要在用户当前的目录下创建一个wgetrc的文件,,文件中可以设置代理服务器:

http-proxy=111.111.111.111:8080

ftp-proxy=111.111.111.111:8080

如果代理服务器需要密码则使用:

-proxy-user=USER设置代理用户

-proxy-passwd=PASS设置代理密码

-proxy=on/off开启或关闭代理

 

ping

【功能说明】

         使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。

【使用权限】

         所有使用者

【语法】

         ping [-dfnqrRv][-c 发送次数][-i 间隔秒数][-I 网络界面][-l 前置载入][-p 范本样式][-s 数据包大小][-t 存活数值][主机名或IP地址]

【参数】

-d 使用Socket的SO_DEBUG功能。

-f 极限检测。大量且快速地送网络封包给一台机器,看它的回应。

-n 只输出数值。   

-q 不显示任何传送封包的信息,只显示最后的结果。

-r 忽略普通的Routing Table,直接将数据包送到远端主机上。通常是查看本机的网络接口是否有问题。

-R 记录路由过程。

-v 详细显示指令的执行过程。

-c 数目 在发送指定数目的包后停止。

-i 秒数 设定间隔几秒送一个网络封包给一台机器,预设值是一秒送一次。

-I 网络界面  使用指定的网络界面送出数据包。

-l 前置载入 设置在送出要求信息之前,先行发出的数据包。

-p 范本样式 设置填满数据包的范本样式。

-s 字节数 指定发送的数据字节数,预设值是56,加上8字节的ICMP头,一共是64ICMP数据字节。

-t 存活数值 设置存活数值TTL的大小。

【实例】

[[email protected] ~]$ ping -c 10 -i 2 www.baidu.com

PING www.a.shifen.com (115.239.210.27) 56(84) bytes of data.

64 bytes from 115.239.210.27: icmp_seq=1 ttl=128 time=31.6 ms

64 bytes from 115.239.210.27: icmp_seq=2 ttl=128 time=32.7 ms

64 bytes from 115.239.210.27: icmp_seq=3 ttl=128 time=31.4 ms

64 bytes from 115.239.210.27: icmp_seq=4 ttl=128 time=30.7 ms

64 bytes from 115.239.210.27: icmp_seq=5 ttl=128 time=31.4 ms

64 bytes from 115.239.210.27: icmp_seq=6 ttl=128 time=32.4 ms

64 bytes from 115.239.210.27: icmp_seq=7 ttl=128 time=33.1 ms

64 bytes from 115.239.210.27: icmp_seq=8 ttl=128 time=31.2 ms

64 bytes from 115.239.210.27: icmp_seq=9 ttl=128 time=30.9 ms

64 bytes from 115.239.210.27: icmp_seq=10 ttl=128 time=30.4 ms

 

--- www.a.shifen.com ping statistics ---

10 packets transmitted, 10 received, 0% packet loss, time 17993ms

rtt min/avg/max/mdev = 30.467/31.632/33.196/0.865 ms

 

[[email protected] ~]$ ping -t 100 -s 128 www.baidu.com

PING www.a.shifen.com (115.239.210.26) 128(156) bytes of data.

136 bytes from 115.239.210.26: icmp_seq=1 ttl=128 time=33.0 ms

136 bytes from 115.239.210.26: icmp_seq=2 ttl=128 time=32.3 ms

136 bytes from 115.239.210.26: icmp_seq=3 ttl=128 time=32.6 ms

136 bytes from 115.239.210.26: icmp_seq=4 ttl=128 time=34.3 ms

136 bytes from 115.239.210.26: icmp_seq=5 ttl=128 time=32.3 ms

136 bytes from 115.239.210.26: icmp_seq=6 ttl=128 time=32.6 ms

136 bytes from 115.239.210.26: icmp_seq=7 ttl=128 time=32.9 ms

136 bytes from 115.239.210.26: icmp_seq=8 ttl=128 time=32.6 ms

136 bytes from 115.239.210.26: icmp_seq=9 ttl=128 time=32.5 ms

#加上8bytes的ICMP包头就是136bytes

 

 

 

route

【功能说明】

打印和操作路由表

【使用权限】

         打印(所用使用者) 操作(管理员权限)

【参数说明】

         add:添加一条路由

         del:删除一条路由

         -net:目标是一个网络

         -host:目标是一个主机

         netmask:当添加一个网络路由时,需要设定子网掩码

         gw:路由数据包通过网关,,指定的网关必须能够到达

         metric:设置路由跳数

【实例】

添加一条路由:

route  add  -net  192.168.1.0  mask  255.255.255.0  dev  eth0

#添加一条到达192.168.1.0的路由,指定子网掩码是255.255.255.0,数据包通过eth0

 

route  add  -net  192.168.2.0  mask  255.255.255.0  gw  192.168.0.2

#添加一条到达192.1681.2.0的路由,指定子网掩码是255.255.255.0,数据包通过网关192.168.0.2

 

route  add  -host  192.168.3.1  mask  255.255.255.0  gw  192.168.0.2

#所有去往192.168.3.1主机的数据包通过网关192.168.0.2

 

route  add  default  gw  192.168.1.2

#添加一条默认网关,所有数据包转发到192.168.1.2

 

[[email protected] ~]$ route -n

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 eth0

0.0.0.0         192.168.1.2     0.0.0.0         UG    0      0        0 eth0

 

Destination:目标网络或主机。

Gateway:网关地址。

Genmask:目标网络的网络掩码。"255.255.255.255"表示一个主机。"0.0.0.0"表示网关。

Flags:标记。

       U、路由被启用。

       H、目标是一个主机

       G、使用网关。

 

 

ifconfig

【功能说明】

         查看和配置网络设备,重启系统后配置将失效

【使用权限】

         查看(所有使用者) 配置(管理员权限)

【参数】

         up:启动指定网络设备/网卡

         down:关闭指定网络设备/网卡。该参数可以有效地阻止通过指定接口的IP信息,如果想永久地关闭一个借口,需要从核心路由表中将该接口的路由信息全部删除

         arp:设置指定网卡是否支持ARP协议

         -promisc: 设置是否支持网卡的promiscuous模式,如果选择此参数,网卡将接收网络中发给它所有的数据包

         -allmulti 设置是否支持多播模式,如果选择此参数,网卡将接收网络中所有的多播数据包

-a 显示全部接口信息

-s 显示摘要信息(类似于 netstat -i)

add 给指定网卡配置IPv6地址

del 删除指定网卡的IPv6地址

<硬件地址> 配置网卡最大的传输单元

mtu<字节数> 设置网卡的最大传输单元 (bytes)

netmask<子网掩码> 设置网卡的子网掩码。掩码可以是有前缀0x的32位十六进制数,也可以是用点分开的4个十进制数。如果不打算将网络分成子网,可以不管这一选项;如果要使用子网,那么请记住,网络中每一个系统必须有相同子网掩码。

tunel 建立隧道

dstaddr 设定一个远端地址,建立点对点通信

-broadcast<地址> 为指定网卡设置广播协议

-pointtopoint<地址> 为网卡设置点对点通讯协议

multicast 为网卡设置组播标志

address 为网卡设置IPv4地址

txqueuelen<长度> 为网卡设置传输列队的长度

【实例】

1.[[email protected] ~]$ ifconfig

eth0      Link encap:Ethernet  HWaddr 00:0C:29:DF:E8:87 

          inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0

          inet6 addr: fe80::20c:29ff:fedf:e887/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:123171 errors:0 dropped:0 overruns:0 frame:0

          TX packets:122982 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000

          RX bytes:12092654 (11.5 MiB)  TX bytes:12079370 (11.5 MiB)

 

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:66 errors:0 dropped:0 overruns:0 frame:0

          TX packets:66 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0

          RX bytes:5340 (5.2 KiB)  TX bytes:5340 (5.2 KiB)

#eth0表示第一块网卡,其中HWaddr表示网卡的物理地址,为00:0C:29:DF:E8:87,inet addr,表示ip地址为192.168.1.3,广播地址192.168.1.255,子网掩码255.255.255.0。

 

#lo表示主机的环回地址,这个一般是用来测试一个网络程序,但又不想让局域网或外网的用户能够查看,只能在此台主机上运行和查看所用的网络接口。比如把 HTTPD服务器的指定到回坏地址,在浏览器输入 127.0.0.1 就能看到你所架WEB网站了。但只是您能看得到,局域网的其它主机或用户无从知道。

第一行:连接类型:Ethernet(以太网)HWaddr(硬件mac地址)

第二行:网卡的IP地址、子网、掩码

第三行:UP(代表网卡开启状态)RUNNING(代表网卡的网线被接上)MULTICAST(支持组播)MTU:1500(最大传输单元):1500字节

第四、五行:接收、发送数据包情况统计

第七行:接收、发送数据字节数统计信息。

 

2.

ifconfig  eth0  up

#启动网卡eth0

ifconfig  eth0  down

#关闭网卡eth0

注意:ssh登录服务器要小心了,关闭了就不能开启,除非有多网卡。

 

3.

ifconfig eth0 add 33ffe:3240:800:1005::2/64

#添加IPV6地址

ifconfig eth0 del 33ffe:3240:800:1005::2/64

#删除IPV6地址

 

4.

ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE

#修改硬件地址

 

5.

ifconfig  eth0  192.168.1.1  netmask  255.255.255.0  broadcast 192.168.1.255

#配置IP地址

 

6.

ifconfig  eth0  arp

#开启arp协议

ifconfig  eth0  -arp

#关闭arp协议

 

7.

ifconfig  eth0  mtu  1500

#设置最大最大传输单元

        

 

ifup

【功能说明】

         用于激活指定的网络接口

【语法】

         ifup  [网络接口]

【实例】

ifup eth0

【经验技巧】

ifup是一个Bash脚本程序,用于激活指定的网络接口。

 

ifdown

【功能说明】

         禁用指定的网络接口

【语法】

         ifdown     [网络接口]

【实例】

ifdown eth0

【经验技巧】

ifdown 是一个Bash脚本程序,用于禁用指定的网络接口

 

*比较ifconfig、ifup或ifdown之间的区别

(1)ifconfig:查询、设置网卡与IP段等相关参数

(2)ifup/ifdown  interface:这两个文件是脚本文件,通过更简单的方式来启动/禁用网络接口,其中interface必须是/etc/sysconfig/network-scripts/目录下与ifcfg-ethX文件相对的ethX。

在使用前确定ifcfg-ethX是否真的存在于正确的目录下,否则会启动失效。

 

另外,如果以ifconfig eth0来设置或者修改了网络接口的信息,那么就无法再以ifdown eth0的方式来关闭了,因为ifdown会分析比较目前的网络参数与ifcfg-eth0是否相符,不符的话,会放弃此次操作。因此若使用ifconfig修改完后,应该是要ifconfig  eth0 down才能够关闭该接口。

 

总之,ifcfg-ethX必须存在而且与目前的网络参数相符,ifup/ifdown才能生效。

 

 

netstat

【功能说明】

         用于显示各种网络连接信息

【使用权限】

         所有使用者

【参数】

         -a:显示所有选项,默认不显示LISTEN相关

         -t:仅显示tcp相关项目

         -u:仅显示udp相关项目

         -n:拒绝显示别名,能显示数字的全部转化成数字

         -l:仅列出有在listen的服务状态

         -p:显示建立相关链接的程序名

         -r:显示路由信息,路由表

         -e:显示扩展信息,例如uid等

         -s:按各个协议进行统计

         -c:每个一个固定时间,执行netstat命令

【实例】

  1. 列出所有端口(包括监听和未监听的)

#列出所有端口

[[email protected] ~]# netstat -a |more

Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address               Foreign Address             State     

tcp        0      0 *:19880                     *:*                         LISTEN     

tcp        0     52 192.168.1.5:19880           192.168.1.1:62524           ESTABLISHED

tcp        0      0 *:19880                     *:*                         LISTEN     

udp        0      0 *:bootpc                    *:*                                    

raw        0      0 *:icmp                      *:*                         7          

raw        0      0 *:icmp                      *:*                         7          

raw        0      0 *:icmp                      *:*                         7          

raw        0      0 *:icmp                      *:*                         7          

raw        0      0 *:icmp                      *:*                         7          

Active UNIX domain sockets (servers and established)

Proto RefCnt Flags       Type       State         I-Node Path

unix  7      [ ]         DGRAM                    9275   /dev/log

unix  2      [ ]         DGRAM                    1905   @/org/kernel/udev/udevd

unix  2      [ ]         DGRAM                    10648 

unix  2      [ ]         DGRAM                    10156 

unix  2      [ ]         DGRAM                    10137 

unix  3      [ ]         STREAM     CONNECTED     9954  

unix  3      [ ]         STREAM     CONNECTED     9953  

unix  2      [ ]         DGRAM                    9949  

unix  2      [ ]         DGRAM                    9421  

unix  2      [ ]         DGRAM                    9284  

 

#列出所有tcp端口netstat  -at

[[email protected] ~]# netstat -at

Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address               Foreign Address             State     

tcp        0      0 *:19880                     *:*                         LISTEN     

tcp        0    284 192.168.1.5:19880           192.168.1.1:62524           ESTABLISHED

tcp        0      0 *:19880                     *:*                         LISTEN

 

  1. 列出所有处于监听状态的Sockets

#只显示监听端口netstat  -l

[[email protected] ~]# netstat -l

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address               Foreign Address             State     

tcp        0      0 *:19880                     *:*                         LISTEN     

tcp        0      0 *:19880                     *:*                         LISTEN     

udp        0      0 *:bootpc                    *:*                                    

raw        0      0 *:icmp                      *:*                         7          

raw        0      0 *:icmp                      *:*                         7          

raw        0      0 *:icmp                      *:*                         7          

raw        0      0 *:icmp                      *:*                         7          

raw        0      0 *:icmp                      *:*                         7          

raw        0      0 *:icmp                      *:*                         7          

raw        0      0 *:icmp                      *:*                         7          

Active UNIX domain sockets (only servers)

Proto RefCnt Flags       Type       State         I-Node Path

 

#只列出所有监听tcp端口netstat  -lt

[[email protected] ~]# netstat -lt

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address               Foreign Address             State     

tcp        0      0 *:19880                     *:*                         LISTEN     

tcp        0      0 *:19880                     *:*                         LISTEN 

 

  1. 显示每个协议的统计信息

#显示所有端口的统计信息netstat -s

[[email protected] ~]# netstat -s

Ip:

    6143 total packets received

    3 with invalid addresses

    0 forwarded

    0 incoming packets discarded

    6140 incoming packets delivered

    6168 requests sent out

Icmp:

    5656 ICMP messages received

    0 input ICMP message failed.

    ICMP input histogram:

        echo requests: 1

        echo replies: 5655

    5757 ICMP messages sent

    0 ICMP messages failed

    ICMP output histogram:

        echo request: 5756

        echo replies: 1

IcmpMsg:

        InType0: 5655

        InType8: 1

        OutType0: 1

        OutType8: 5756

Tcp:

    0 active connections openings

    1 passive connection openings

    0 failed connection attempts

    0 connection resets received

    1 connections established

    400 segments received

    330 segments send out

    0 segments retransmited

    0 bad segments received.

    0 resets sent

Udp:

    81 packets received

    0 packets to unknown port received.

    0 packet receive errors

    81 packets sent

TcpExt:

    5 delayed acks sent

    78 packets header predicted

    190 acknowledgments not containing data received

    0 TCP data loss events

IpExt:

    InBcastPkts: 3

 

#显示tcp端口的统计信息netstat  -st

[[email protected] ~]# netstat -st

IcmpMsg:

    InType0: 6227

    InType8: 1

    OutType0: 1

    OutType8: 6333

Tcp:

    0 active connections openings

    1 passive connection openings

    0 failed connection attempts

    0 connection resets received

    1 connections established

    436 segments received

    390 segments send out

    0 segments retransmited

    0 bad segments received.

    0 resets sent

TcpExt:

    5 delayed acks sent

    84 packets header predicted

    204 acknowledgments not containing data received

    0 TCP data loss events

IpExt:

    InBcastPkts: 3

 

  1. 在netstat输出中显示PID和进程名netstat  -p

#netstat  -p可以与其他开关一起使用,就可以天剑pid/进程名称到netstat输出信息中

    [[email protected] ~]# netstat -pt

Active Internet connections (w/o servers)

Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name  

tcp        0    284 192.168.1.5:19880           192.168.1.1:62524           ESTABLISHED 2402/sshd

 

  1. 用数字代替端口和用户名netstat  -n

[[email protected] ~]# netstat -an

Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address               Foreign Address             State     

tcp        0      0 0.0.0.0:19880               0.0.0.0:*                   LISTEN     

tcp        0    284 192.168.1.5:19880           192.168.1.1:62524           ESTABLISHED

tcp        0      0 :::19880                    :::*                        LISTEN     

udp        0      0 0.0.0.0:68                  0.0.0.0:*                               

raw        0      0 0.0.0.0:1                   0.0.0.0:*                   7          

raw        0      0 0.0.0.0:1                   0.0.0.0:*                   7          

raw        0      0 0.0.0.0:1                   0.0.0.0:*                   7          

raw        0      0 0.0.0.0:1                   0.0.0.0:*                   7          

raw        0      0 0.0.0.0:1                   0.0.0.0:*                   7          

raw        0      0 0.0.0.0:1                   0.0.0.0:*                   7          

raw        0      0 0.0.0.0:1                   0.0.0.0:*                   7          

raw        0      0 0.0.0.0:1                   0.0.0.0:*                   7          

raw        0      0 0.0.0.0:1                   0.0.0.0:*                   7          

raw        0      0 0.0.0.0:1                   0.0.0.0:*                   7          

raw        0      0 0.0.0.0:1                   0.0.0.0:*                   7          

Active UNIX domain sockets (servers and established)

Proto RefCnt Flags       Type       State         I-Node Path

unix  7      [ ]         DGRAM                    9275   /dev/log

unix  2      [ ]         DGRAM                    1905   @/org/kernel/udev/udevd

unix  2      [ ]         DGRAM                    10648 

unix  2      [ ]         DGRAM                    10156 

unix  2      [ ]         DGRAM                    10137 

unix  3      [ ]         STREAM     CONNECTED     9954  

unix  3      [ ]         STREAM     CONNECTED     9953  

unix  2      [ ]         DGRAM                    9949  

unix  2      [ ]         DGRAM                    9421  

unix  2      [ ]         DGRAM                    9284

 

  1. 显示核心路由信息netstat  -r

[[email protected] ~]# netstat -r

Kernel IP routing table

Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface

192.168.1.0     *               255.255.255.0   U         0 0          0 eth0

169.254.0.0     *               255.255.0.0     U         0 0          0 eth0

default         192.168.1.2     0.0.0.0         UG        0 0          0 eth0

 

  1. 查看链接某服务端口最多的IP地址

netstat -nat | grep "192.168.1.15:22" |awk ‘{print $5}‘|awk -F: ‘{print $1}‘|sort|uniq -c|sort -nr|head -20

221.136.168.36

154.74.45.242

78.173.31.236

62.183.207.98

192.168.1.14

182.48.111.215

124.193.219.34

119.145.41.2

114.255.41.30

75.102.11.99

 

 

 

rpm

【功能说明】

         RPM是RedHat  Package  Management的简称,是用来管理软件包的程序

【参数】

         -I,--install

         -v,--verbose

         -h,--hash

         -e,--erase

         -U,--upgrade

         --replacepkge:无论软件包是否已被安装,都强行安装软件包

         --test:安装测试,并不实际安装

         --nodeps:忽略软件包依赖关系强行安装

         --force:忽略软件包及文件的冲突

 

Query  options(with  -q  or  --query)

-a,--all:检查所有的的包

-p,--package:检查某个包文件

-l,--list:列出包中的所有文件

-d,--docfiles:列出包中的所有说明文件

-f,--file:查询包中归属的文件

 

【常用组合】

         -ivh:安装显示进度(--install--verbose-hash)

         -Uvh:升级软件包--Update

         -qpl:列出RPM软件包的文件信息(Query Package List)

         -qpi:列出RPM软件包的描述信息(Query Package Install packages)

         -qf:查找指定文件属于哪个RPM软件包(Query File)

         -Va:校验所有的RPM软件包,查找丢失的文件(View  Lost)

         -e:删除包

rpm -q samba //查询程序是否安装

 

rpm -ivh  /media/cdrom/RedHat/RPMS/samba-3.0.10-1.4E.i386.rpm //按路径安装并显示进度

rpm -ivh --relocate /=/opt/gaim gaim-1.3.0-1.fc4.i386.rpm    //指定安装目录

 

rpm -ivh --test gaim-1.3.0-1.fc4.i386.rpm    //用来检查依赖关系;并不是真正的安装;

rpm -Uvh --oldpackage gaim-1.3.0-1.fc4.i386.rpm //新版本降级为旧版本

 

rpm -qa | grep httpd      #[搜索指定rpm包是否安装]--all搜索*httpd*

rpm -ql httpd         #[搜索rpm包]--list所有文件安装目录

 

rpm -qpi Linux-1.4-6.i368.rpm #[查看rpm包]--query--package--install package信息

rpm -qpf Linux-1.4-6.i368.rpm #[查看rpm包]--file

rpm -qpR file.rpm       #[查看包]依赖关系

rpm2cpio file.rpm |cpio -div    #[抽出文件]

 

rpm -ivh file.rpm  #[安装新的rpm]--install--verbose--hash

rpm -ivh

 

rpm -Uvh file.rpm    #[升级一个rpm]--upgrade

rpm -e file.rpm      #[删除一个rpm包]--erase

 

 

rsync

【功能说明】

         rsync是类unix系统下的数据镜像备份工具,可以讲一个客户机和远程文件服务器之间的文件同步

【参数】

-v, --verbose 详细模式输出 
-q, --quiet 精简输出模式 
-c, --checksum 打开校验开关,强制对文件传输进行校验 
-a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD 
-r, --recursive 对子目录以递归模式处理 
-R, --relative 使用相对路径信息 
-b, --backup 创建备份,也就是对于目的已经存在有同样的文件名时,将老的文件重新命名为~filename。可以使用--suffix选项来指定不同的备份文件前缀。 
--backup-dir 将备份文件(如~filename)存放在在目录下。 
-suffix=SUFFIX 定义备份文件前缀 
-u, --update 仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件。(不覆盖更新的文件) 
-l, --links 保留软链结 
-L, --copy-links 想对待常规文件一样处理软链结 
--copy-unsafe-links 仅仅拷贝指向SRC路径目录树以外的链结 
--safe-links 忽略指向SRC路径目录树以外的链结 
-H, --hard-links 保留硬链结 
-p, --perms 保持文件权限 
-o, --owner 保持文件属主信息 
-g, --group 保持文件属组信息 
-D, --devices 保持设备文件信息 
-t, --times 保持文件时间信息 
-S, --sparse 对稀疏文件进行特殊处理以节省DST的空间 
-n, --dry-run现实哪些文件将被传输 
-W, --whole-file 拷贝文件,不进行增量检测 
-x, --one-file-system 不要跨越文件系统边界 
-B, --block-size=SIZE 检验算法使用的块尺寸,默认是700字节 
-e, --rsh=COMMAND 指定使用rsh、ssh方式进行数据同步 
--rsync-path=PATH 指定远程服务器上的rsync命令所在路径信息 
-C, --cvs-exclude 使用和CVS一样的方法自动忽略文件,用来排除那些不希望传输的文件 
--existing 仅仅更新那些已经存在于DST的文件,而不备份那些新创建的文件 
--delete 删除那些DST中SRC没有的文件 
--delete-excluded 同样删除接收端那些被该选项指定排除的文件 
--delete-after 传输结束以后再删除 
--ignore-errors 及时出现IO错误也进行删除 
--max-delete=NUM 最多删除NUM个文件 
--partial 保留那些因故没有完全传输的文件,以是加快随后的再次传输 
--force 强制删除目录,即使不为空 
--numeric-ids 不将数字的用户和组ID匹配为用户名和组名 
--timeout=TIME IP超时时间,单位为秒 
-I, --ignore-times 不跳过那些有同样的时间和长度的文件 
--size-only 当决定是否要备份文件时,仅仅察看文件大小而不考虑文件时间 
--modify-window=NUM 决定文件是否时间相同时使用的时间戳窗口,默认为0 
-T --temp-dir=DIR 在DIR中创建临时文件 
--compare-dest=DIR 同样比较DIR中的文件来决定是否需要备份 
-P 等同于 --partial 
--progress 显示备份过程 
-z, --compress 对备份的文件在传输时进行压缩处理 
--exclude=PATTERN 指定排除不需要传输的文件模式 
--include=PATTERN 指定不排除而需要传输的文件模式 
--exclude-from=FILE 排除FILE中指定模式的文件 
--include-from=FILE 不排除FILE指定模式匹配的文件 
--version 打印版本信息 
--address 绑定到特定的地址 
--config=FILE 指定其他的配置文件,不使用默认的rsyncd.conf文件 
--port=PORT 指定其他的rsync服务端口 
--blocking-io 对远程shell使用阻塞IO 
-stats 给出某些文件的传输状态 
--progress 在传输时现实传输过程 
--log-format=formAT 指定日志文件格式 
--password-file=FILE 从FILE中得到密码 
--bwlimit=KBPS 限制I/O带宽,KBytes per second 
-h, --help 显示帮助信息

【实例】

Rsync的命令格式可以为以下六种:

  rsync [OPTION]... SRC DEST

  rsync [OPTION]... SRC [[email protected]]HOST:DEST

  rsync [OPTION]... [[email protected]]HOST:SRC DEST

  rsync [OPTION]... [[email protected]]HOST::SRC DEST

  rsync [OPTION]... SRC [[email protected]]HOST::DEST

  rsync [OPTION]... rsync://[[email protected]]HOST[:PORT]/SRC [DEST]

  对应于以上六种命令格式,rsync有六种不同的工作模式:

  1)拷贝本地文件。当SRC和DES路径信息都不包含有单个冒号":"分隔符时就启动这种工作模式。如:rsync -a /data /backup

  2)使用一个远程shell程序(如rsh、ssh)来实现将本地机器的内容拷贝到远程机器。当DST路径地址包含单个冒号":"分隔符时启动该模式。如:rsync -avz *.c foo:src

  3)使用一个远程shell程序(如rsh、ssh)来实现将远程机器的内容拷贝到本地机器。当SRC地址路径包含单个冒号":"分隔符时启动该模式。如:rsync -avz foo:src/bar /data

  4)从远程rsync服务器中拷贝文件到本地机。当SRC路径信息包含"::"分隔符时启动该模式。如:rsync -av [email protected]::www /databack

  5)从本地机器拷贝文件到远程rsync服务器中。当DST路径信息包含"::"分隔符时启动该模式。如:rsync -av /databack [email protected]::www

  6)列远程机的文件列表。这类似于rsync传输,不过只要在命令中省略掉本地机信息即可。如:rsync -v rsync://172.16.78.192/www

以上是关于Linux课程笔记 Day06 命令总结的主要内容,如果未能解决你的问题,请参考以下文章

Linux课程笔记 Day03 命令总结

Linux课程笔记 Day06 课上内容总结

Linux课程笔记 Day03 课程内容总结

Linux课程笔记 Day04 课上内容总结

Linux课程笔记 Day01 课程内容总结

Linux课程笔记 Day02 课程内容总结