Linux学习笔记--命令篇

[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]# wget www.baidu.com

下载百度首页数据

图:下载百度首页数据

例2:在后台尝试5次下载文件http://imgsrc.baidu.com/image/c0%3Dshijue1%2C0%2C0%2C294%2C40/sign=99bd7ae7a551f3ded7bfb127fc879a6a/b58f8c5494eef01f3e82aae8eafe9925bc317d0c.jpg 并把提示信息记录到download.log文件中。如下图

1
[root]# wget -t 5 -o download.log http://imgsrc.baidu.com/image/c0%3Dshijue1%2C0%2C0%2C294%2C40/sign=99bd7ae7a551f3ded7bfb127fc879a6a/b58f8c5494eef01f3e82aae8eafe9925bc317d0c.jpg

下载文件

图:尝试五次下载图片


文本浏览—-lynx


lynx命令作用:

lynx纯是文本模式的Web浏览程序,可以浏览指定的文件,目录或URL中的html文件。

lynx命令语法:

1
lynx [参数] [文件/目录/URL]

wget命令参数:

参数 参数说明
- 从标准输入获取参数信息
-index= 指定该网页为缺省的索引条件
-localhost 仅允许本地主机浏览网页,关闭指向远端主机的URL
-version 显示lynx的版本信息

lynx命令实例:

例1:浏览网站www.baidu.com

1
[root]# lynx baidu.com

例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

ifconfig eth0

图:本地主机以太网卡eth0的状态

图中参数解释:

  1. Hwaddr:本地网卡eth0的MAC地址。
  2. inet addr:iPv4地址。Bcast:广播地址。
  3. inet addr:IPv6地址。
  4. MTU:最大传输单元。 Metric:度量值。
  5. RX:统计接收的数据包。TX:统计发送的数据包。

例2:配置本地主机回送接口。

1
2
[root]# ifconfig lo inet 127.0.0.1 up
[root]# ifconfig lo

ifconfig lo

例3:常用的命令。

  • 显示本地主机所有网络接口信息,包括激活和非激活的。

    1
    [root]# ifconfig
  • 配置eth0网络接口IP地址为192.168.1.1/24

  • 1
    [root]# ifconfig eth0 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255
  • 启用或关闭eth0接口。

  • 1
    [root]# ifconfig eth0 up/down

启动或关闭网络适配器——-ifup、ifdown


ifup,ifdown命令作用:

启动或关闭网络适配器。

ifup,ifdown命令语法:

1
2
ifup [网络设备]
ifdown [网络设备]

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

netstat -nr

图:内核路由表

图中FLags参数解释:

  1. G:路由器将采用网关。
  2. U: 准备使用的接口处于“活动”状态。
  3. H:通告该路由,只能抵达一台主机。
  4. D:如果路由表达条目是由ICMP重定向消息生成的,就会设置这个标记。
  5. M:如果路由表达条目是由ICMP重定向消息修改,就会设置这个标记。

例2:查看本机网络接口当前配置信息。

1
[root]# netstat -i

netstat -i

图: 本机网络接口当前配置信息

图中Flg参数解释:

  1. B: 已经设置了一个广播地址。
  2. L: 该接口是一个回送设备。
  3. M;接收所有数据包(混乱模式)。
  4. N;避免跟踪。
  5. P:这是一个点到点连接。
  6. R:接口正在运行。
  7. U:接口处于“活动”状态。

例3:查看本机TCP传输协议的连线状况。

1
[root]# netstat -ta

netstat -ta

图: 本机TCP传输协议的连线状况

图中参数解释:

  1. Proto:通信协议。
  2. Recv-Q:接收队列中的数据量。
  3. Send-Q:发送队列中的数据量。
  4. Local Address:本地主机名和端口号。
  5. Foreign Address:远程主机名和端口号。
  6. 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

route -n

图:路由表的内容

Flags位解释:描述了路由表当前的状态。

  • U:表示路由表处于活动状态。
  • H:表示目标是主机。
  • G:表示使用网关。

例2:在路由表中添加一个到指定网络的静态路由。如下图:

1
[root]# route add -net 192.168.2.0 netmask 255.255.255.0 dev eth0

route add

图:成功添加一个静态路由

例3:添加一条规则,拒绝数据包到私有网络10.0.0.0,子网掩码255.0.0.0。如图:

1
[root]# route add -net 10.0.0.0 netmask 255.0.0.0 reject

route reject

图:设置拒绝数据包到私有网络

例4:设置访问外网缺省网关位192.168.1.1。

1
[root]# route add default gw 192.168.1.1 erh0

查看或设置路由表—–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]# ip link set eth0 address ff:ff:ff:ff:ff:ff

例2:禁用网络接口lo。如图:

1
[root]# ip link set lo down

ip link set lo down

图:禁用网络设备接口LO

例3:查看网络link信息。如图:

1
[roo]# ip link list

ip link list

图:查看网络link信息

图中选项解释:

  • 第一个数字是网络设备的数字标识,唯一性。
  • 第二部分是网络设备名称,图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

ip -s link show

图:查看网络设备统计信息

例5:查看地址信息。如图:

1
[root]# ip addr list

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
2
[root]# ip neighbour show
[root]# ip neighbour add 10.0..1.3 lladdr 0:0:0:0:0:0:1 dev eth0 nud perm

例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]# ipcalc -mbpn 192.168.1.1/24

ipcalc

图:计算192.168.1.1的相关信息


文件的基本管理

文件的建立、移动、删除


建立文件—–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强大。


改变文件的属主或属组—–chown

改变文件的访问权限—-chmod



坚持原创技术分享,您的支持将鼓励我继续创作!