[TOC]
Linux基本网络及文件传输命令
基本网络命令
网络下载—wget
wget命令作用:
wget命令的作用是从WWW服务器上检索和下载文件。通过HTTP和FTP,该命令可浏览Web战点上的文件并将这些文件下载到本地主机上。
wget不提供交互式的操作界面,但可以在用户登录系统的情况下在后台中执行,因此可以在后台启动并在空闲或固定时间下载网络资源。
wget命令语法:
1 | wget [参数] [URL] |
wget命令参数:
参数 | 参数说明 |
---|---|
-a或–append-ourput=<记录文件> | 把信息输出到记录文件中 |
-nc或–no-clobber | 不覆盖存在的文件或使用.#前缀 |
-o或–output-file=<记录文件> | 同-a,但若制定的记录文件已存在,则覆盖该文件 |
-r或–recursive | 递归下载,应慎用 |
-t或–tries=<尝试次数> | 设定最大尝试连接次数(0表示无限制) |
wget命令实例:
例1:下载www.baidu.com 网站首页数据,如下图所示
1 | [root] |
例2:在后台尝试5次下载文件http://imgsrc.baidu.com/image/c0%3Dshijue1%2C0%2C0%2C294%2C40/sign=99bd7ae7a551f3ded7bfb127fc879a6a/b58f8c5494eef01f3e82aae8eafe9925bc317d0c.jpg 并把提示信息记录到download.log文件中。如下图
1 | [root] |
文本浏览—-lynx
lynx命令作用:
lynx纯是文本模式的Web浏览程序,可以浏览指定的文件,目录或URL中的html文件。
lynx命令语法:
1 | lynx [参数] [文件/目录/URL] |
wget命令参数:
参数 | 参数说明 |
---|---|
- | 从标准输入获取参数信息 |
-index= |
指定该网页为缺省的索引条件 |
-localhost | 仅允许本地主机浏览网页,关闭指向远端主机的URL |
-version | 显示lynx的版本信息 |
lynx命令实例:
例1:浏览网站www.baidu.com
1 | [root] |
例2:打开离线html文档index.html
1 | [root]# lynx index.html |
基本网络配置命令
查看或设置基本配置
配置或显示网络设备—-ifconfig
ifconfig命令作用:
ifconfig的作用是配置或显示网络设备(即网络适配器,NIC)。
ifconfig命令语法:
1 | [root]# ifconfig [网络设备] [Ip地址] [参数] |
ifconfig命令参数:
参数 | 参数说明 |
---|---|
add<地址> | 设置IPv6地址 |
del<地址> | 删除IPv6地址 |
down | 关闭指定网络设备 |
up | 启动指定网络设备 |
netmask<子网掩码> | 设置网络子网掩码 |
-broadcast<地址> | 以广播形式将数据包发送到指定地址。符号表示关闭,不加符号表示启动 |
[IP地址] | 指定网络设备的IP地址 |
[网络设备] | 指定网络设备的名称 |
ifconfig命令实例:
例1:显示安装在本地主机的第一块一台网卡eth0的状态。如下图
1 | [root]# ifconfig eth0 |
图中参数解释:
- Hwaddr:本地网卡eth0的MAC地址。
- inet addr:iPv4地址。Bcast:广播地址。
- inet addr:IPv6地址。
- MTU:最大传输单元。 Metric:度量值。
- RX:统计接收的数据包。TX:统计发送的数据包。
例2:配置本地主机回送接口。
1 | [root]# ifconfig lo inet 127.0.0.1 up |
例3:常用的命令。
显示本地主机所有网络接口信息,包括激活和非激活的。
1
[root]# ifconfig
配置eth0网络接口IP地址为192.168.1.1/24
1
[root]
启用或关闭eth0接口。
1
[root]# ifconfig eth0 up/down
启动或关闭网络适配器——-ifup、ifdown
ifup,ifdown命令作用:
启动或关闭网络适配器。
ifup,ifdown命令语法:
1 | ifup [网络设备] |
ifup,ifdown命令实例:
例:启用eth0网络接口。
1 | [root]# ifup eth0 |
查看或设置主机名—–hostname
hostname命令作用:
hostname的作用是设置或显示当前主机系统的名称、域名和节点名等。root用户才有权限。
hostname命令语法:
1 | hostname [参数] |
hostname命令参数:
参数 | 参数说明 |
---|---|
-a或-alias | 显示主机的别名 |
-d或-domain | 显示DNS域名 |
-h或–help | 显示帮助信息 |
-i或–ip-address | 显示主机IP地址 |
-n或-node | 显示DECnet网络的节点名称 |
-s或-short | 显示短主机名 |
显示hostname命令版本号 | |
-v或–verbose | 显示命令的执行过程 |
hostname命令实例:
例:更改当前主机名为 Linux。
1 | [root]# hostname Linux |
查看或配置arp缓存—–arp
arp命令作用:
显示和修改地址解析协议(ARP)使用的IP地址到MAC地址的转化表。
arp命令语法:
1 | arp [参数] [ip地址或物理地址] |
arp命令参数:
参数 | 参数说明 |
---|---|
-a[hostnamr]或 –display[hostname] | 显示指定主机的当前所有arp条目。 |
-d[hostname] | 删除指定ARP条目 |
-e | 以缺省Linux样式显示 |
-s hostname hw_addr | 手工追加ARP条目 |
eth_addr | 指定物理地址 |
arp命令实例:
例1:显示主机arp条目。
1 | [root]# arp -a |
例2:手动添加arp条目。
1 | [root]# arp -s Linux 00:0C:29:5F:BA:3D |
查看网络状态—–netstat
netstat命令作用:
netstat 命令的作用是显示IP、TCP、 UDP、ICMP等协议相关的统计信息和当前TCP/IP网络连接状态。
netstat命令语法
1 | netstat[参数] |
netstat命令参数
参数 | 参数说明 |
---|---|
-a或–all | 显示所有连线中的Socket |
-e或–extend | 显示网络其他相关信息 |
-i或–interfaces | 显示指定网络接口的所有信息 |
-l或–listening | 显示监控中的服务器的Socket |
-o或–timers | 显示计时器 |
-r或–route | 显示内核路由表信息 |
-s或–statistice | 显示各网络协议的统计信息 |
-t或–tcp | 显示TCP传输协议的连线状态 |
-u或–udp | 显示UDP传输协议的连线状态 |
netstat命令实例:
例1:查看本机内核路由表信息。
1 | [root]# netstat -nr |
图中FLags参数解释:
- G:路由器将采用网关。
- U: 准备使用的接口处于“活动”状态。
- H:通告该路由,只能抵达一台主机。
- D:如果路由表达条目是由ICMP重定向消息生成的,就会设置这个标记。
- M:如果路由表达条目是由ICMP重定向消息修改,就会设置这个标记。
例2:查看本机网络接口当前配置信息。
1 | [root]# netstat -i |
图中Flg参数解释:
- B: 已经设置了一个广播地址。
- L: 该接口是一个回送设备。
- M;接收所有数据包(混乱模式)。
- N;避免跟踪。
- P:这是一个点到点连接。
- R:接口正在运行。
- U:接口处于“活动”状态。
例3:查看本机TCP传输协议的连线状况。
1 | [root]# netstat -ta |
图中参数解释:
- Proto:通信协议。
- Recv-Q:接收队列中的数据量。
- Send-Q:发送队列中的数据量。
- Local Address:本地主机名和端口号。
- Foreign Address:远程主机名和端口号。
- State:通信状态。listen表示处于监听状态。
路由表设置相关命令
#查看或设置路由表——-route
route命令作用:
route命令作用是查看并编辑主机的IP路由表。
route命令语法:
1 | route [参数] |
route命令参数:
参数 | 参数说明 |
---|---|
以IP格式显示路由表 | |
-e | 以netstst格式显示路由表 |
-ee | 显示一个包含路由表所有参数的行 |
添加一个新的路由 | |
删除一个指定路由 |
route命令参数:
以下参数需和add、del参数联合使用:
参数 | 参数说明 |
---|---|
表明目标是网络 | |
-host | 表明目标是主机 |
dev | 指定设备或接口 |
gw | 指定目标主机或网络的网关 |
target | 目标主机或网络 |
route命令实例:
例1:以IP格式显示路由表的全部内容。如下图:
1 | [root]# route -n |
Flags位解释:描述了路由表当前的状态。
- U:表示路由表处于活动状态。
- H:表示目标是主机。
- G:表示使用网关。
例2:在路由表中添加一个到指定网络的静态路由。如下图:
1 | [root]# route add -net 192.168.2.0 netmask 255.255.255.0 dev eth0 |
例3:添加一条规则,拒绝数据包到私有网络10.0.0.0,子网掩码255.0.0.0。如图:
1 | [root]# route add -net 10.0.0.0 netmask 255.0.0.0 reject |
例4:设置访问外网缺省网关位192.168.1.1。
1 | [root] |
查看或设置路由表—–iproute
iproute作用:
是一款基于Linxu操作系统的网络配置和流量控制的工具集。
iproute命令语法:
1 | ip [参数] 管理对象 [命令[命令参数]] |
iproute命令参数:
参数 | 参数说明 |
---|---|
V | 打印iproute信息 |
r | 将IP地址转换位域名 |
s | 输出更为详细的结果 |
iproute命令管理对象:
参数 | 参数说明 |
---|---|
link | 指网络设备,可以查看和更改设备的属性 |
地址管理 | |
neighbour | arp表管理 |
route | 路由管理 |
rule | 路由策略 |
多址广播地址 | |
mroute | 多播路由缓存管理 |
tunnel | 通道管理 |
add | 添加命令 |
delete | 删除管理 |
list/show | 列表命令 |
set | 设置命令 |
change | 改变命令 |
replace | 替换命令 |
link管理相关参数:
参数 | 参数说明 |
---|---|
dev name | 指定进行操作的网络设备名称 |
up/down | 激活/禁用网络设备 |
arp on/arp off | 使用/禁用arp协议 |
multicast on/off | 打开/关闭多目传送 |
dynamic on/off | 打开/关闭动态标志 |
name NAME | 更改网络设备名称 |
mtu number | 设置最大传输单元 |
Address mac | 设置网络设备的MAC地址 |
broadcast mac | 设置网络设备的硬件广播地址 |
txqlen number | 设置传输队列长度 |
address地址管理相关参数:
参数 | 参数说明 |
---|---|
local address | 协议地址,如192.168.1.100/24 |
peer address | 使用点对点连接对端协议地址 |
broadcast address | 协议广播地址,可简写成brd |
label name | 地址标志 |
scope scope_value | 地址范围。global:全局有效。 site:仅在本地站点有效,在IPv6中使用。 link:只在网络设备上有效。 host:只在该主机上有效。 |
neighbour管理相关参数:
参数 | 参数说明 |
---|---|
to address | 指定协议地址 |
dev name | 指定网络设备名称 |
lladdr | 指定硬件地址 |
nud nud_state | 指定nud值,即邻居不可达检测 |
route管理相关参数:
参数 | 参数说明 |
---|---|
to prefix | 路由的目标前缀 |
dev name | 输出设备的名字 |
src | 发送数据包的源地址 |
via Address | 下一跳路由器 |
iproute命令实例:
例1:设置网络设备eth0的MAC地址为FF:FF:FF:FF:FF:FF。
1 | [root] |
例2:禁用网络接口lo。如图:
1 | [root]# ip link set lo down |
例3:查看网络link信息。如图:
1 | [roo]# ip link list |
图中选项解释:
- 第一个数字是网络设备的数字标识,唯一性。
- 第二部分是网络设备名称,图eth0. 唯一性。
- 第三部分是尖括号中的内容:
- UP:设备正在工作。
- loopback:回送设备,该接口发出的数据不会被传到网络上。
- pointtopoint:P2P网络。
- multicast:具有接收和发送多目传送的能力。
- promisc:混杂模式,设备将监听并将监听到的数据传递给内核,即使不是发送给主机的数据。通常用于网络探测。
- allmulti:表示网络设备将接收所有多目传送的数据报,通常用于多目路由器。
- noapp:通常表示不需要地址解析。
- dynamic:表示该网络设备可以动态的建立和删除。
- slave:表示该网络设备与其他网络设备绑定在一起,形成逻辑上的一个网络设备。
- 第四部分mtu:最大传输单元。
- 第五部分qdisc:网络接口所使用的队列算法。noqueue表示不进行排队。pfifo_fast先进先出。
- 第六部分link/ehier:硬件类型。_
例4:查看网络设备的数据统计信息。如图:
1 | [root]# ip -s link show |
例5:查看地址信息。如图:
1 | [root]# ip addr list |
例5:添加地址信息10.0.1.1/24.
1 | [root]# ip addr add 10.0.1.1/24 brd +dev eth0 label eth0:3 |
例6:查看并添加arp信息。
1 | [root]# ip neighbour show |
例7:查看路由表信息。
1 | [root]# ip route show |
网络检测命令
查看主机的连通性——-ping
ping命令的作用:
ping命令用于检测主机的连通性。
ping命令语法:
1 | ping [参数] [主机名称或ip地址] |
ping命令参数:
参数 | 参数说明 |
---|---|
-c<完成次数> | 指定完成响应次数 |
-f | 极限检测。 |
-I<网络接口> | 使用指定网络接口发出数据 |
-s<数据包大小> | 设置数据包大小。缺省56B,加上8B的ICMP文件头,一共64B |
追溯路由——traceroute
traceroute命令作用:
用于追溯网络数据包的路由途径。
traceroute命令语法:
1 | traceroute [参数] [主机名称或ip地址] [数据包大小] |
IP计算—-ipcalc
ipcalc命令作用:
计算给定IP地址的相关信息。
ipcalc命令语法:
1 | ipcalc [参数] [/前缀] [掩码] |
ipcalc命令参数:
参数 | 参数说明 |
---|---|
-b或–broadcast | 计算广播地址 |
-h或–hostname | 解析给定ip地址的主机名 |
-m或–netmask | 计算子网掩码 |
-p或–prefix | 计算前缀 |
-n或–network | 计算网络地址 |
ipcalc命令实例:
实例1:显示192.168.1.1的相关信息。如下图:
1 | [root] |
文件的基本管理
文件的建立、移动、删除
建立文件—–cat
cat命令作用:
用来串接文件或显示文件内容,但如果从标准输入设备中读入数据并将结果重定向到一个新的文件中,则可以达到创建文件的目的。cat命令在编辑新的文件时只能从键盘接收数据,不够灵活。
cat命令语法:
1 | cat [参数] >|>> {文件名} |
建立文件—————touch
touch命令作用:
创建文件是touch命令的一种特殊情况。touch用来修改指定文件的访问和修改时间属性,若指定文件不存在,则将创建一个新的空文件,并以当前时间设置文件的访问和修改时间。
touch命令语法:
1 | touch [参数] [文件名] |
touch实例:
例1:创建abc文件。
1 | [root]# touch abc |
移动和重命名文件—-mv
mv命令作用:
mv(move)命令可用于对文件,目录的重命名以及移动操作。
mv命令语法:
1 | mv [参数] [原文件或目录] [目标目录或目标文件] |
mv命令参数:
参数 | 参数说明 |
---|---|
-b或–backup | 若需覆盖文件,则覆盖前先行备份 |
-i或–interactive | 交互式操作。如目标目录有同名文件,会提示是否覆盖。 |
mv命令实例:
例1:移动文件cao到home目录下。
1 | [root]# mv -i cao /home/cao |
删除文件—-rm
rm命令作用:
利用rm(remove)命令可以将不需要的文件永久删除。若用-r参数,则可以直接删除一个目录以及目录中的所有文件。
rm命令语法:
1 | rm [参数] [文件或目录] |
rm命令参数:
参数 | 参数说明 |
---|---|
-i | 交互式操作 |
-f | 强制删除,与-i相反 |
-r | 删除目录里面全部文件 |
查看文件内容
查看文件内容—–cat
cat命令作用:
cat适合查看内天不满一屏的文件。
cat命令实例:
例1:查看文件cao的内容。
1 | [root]# cat cao |
查看文件内容—–more
more命令作用:
适合查看大文件。
查看文件内容—-less
less命令作用:
可以用来浏览文件内容。与more不同的是less命令允许用户往回卷动一浏览以看过的内容。
查看文件头部的内容—-head
head命令作用:
查看文件首部内容。默认显示文件的前10行。
查看文件尾部的内容—-tail
tail命令作用:
查看文件尾部内容。默认显示文件的后10行。
查看文件部分内容—-cut
cut命令作用:
显示文件部分内容。可以灵活指定范围,有很大灵活性。
cut命令实例:
例1;查看每行前三个字节。
1 | [root]# cut -b1-3 cao |
例2;查看每行前三个字符。
1 | [root]# cut -c1-3 cao |
查看修改文件的属性
查看文件的类型—-file
file命令作用:
可以查看文件的具体属性。
查看文件的属性—-ll
ll命令作用:
可以查看文件的属性。不如file强大。