5、总结Linux常用命令使用格式,并用实例说明。例如echo、screen、date、ifconfig、export等命令

5、总结Linux常用命令使用格式,并用实例说明。例如echo、screen、date、ifconfig、export等命令

在Linux中,一般命令的通用语法格式如下:

COMMAND  [OPTIONS...] [ARGUMENTS...]

中括号表示可以省略,每个部分之间有一个或多个空格。

下面对几个常用命令的常用用法格式,实例说明。

echo [SHORT-OPTION]... [STRING]...

 echo LONG-OPTION

echo描述

 echo命令的基本用法,很简单,就是echo命令后面跟上要输出的文本,如下。

echo用法一

echo -n 表示不换行输出

echo用法二

使用-e选项输出转义字符

常用的转义字符如下:

\b 转义后相当于按退格键(backspace) ,但前提是”\b”后面存在字符,具体效果参考下方示例。

\c 不换行输出,在”\c”后面不存在字符的情况下,作用相当于echo -n,具体效果参考下方示例。

\n 换行,效果看示例。

\f 换行,但是换行后的新行的开头位置连接着上一行的行尾,具体效果查看示例;

\v 与\f相同;

\t 转以后表示插入tab,即制表符,已经在上面举过例子;

\r 光标移至行首,但不换行,相当于使用”\r”以后的字符覆盖”\r”之前同等长度的字符,只看这段文字描述的话可能不容易理解,具体效果查看示例;

\\ 表示插入”\”本身;

转义符输出示例效果

使用echo命令的-e选项,除了能够输出转义字符,还能够在命令行中输出彩色的字符,或者带有彩色背景的字符。

输出字符带颜色设置

当使用echo输出命令替换后的内容时,命令执行结果的格式可能会发生变化,比如,如果我们想要输出ifconfig命令执行后的结果,我们可能会使用如下命令

但是我们发现,这样输出的文本的格式发生了变化,这样可能不是我们想要的,因为当我们直接执行ifconfig命令时,ifconfig返回的结果是多行的,可是当我们使用echo输出的时候,格式发生了变化,如果想要按照命令执行后的原格式输出命令替换后的结果,可以使用如下方法,如下方法在写脚本的时候可能会用到。

screen

系统管理员经常需要SSH 或者telent 远程登录到Linux 服务器,经常运行一些需要很长时间才能完成的任务,比如系统备份、ftp 传输等等。通常情况下我们都是为每一个这样的任务开一个远程终端窗口,因为它们执行的时间太长了。必须等待它们执行完毕,在此期间不能关掉窗口或者断开连接,否则这个任务就会被杀掉,一切半途而废了。

语法

# screen [-AmRvx -ls -wipe][-d <作业名称>][-h <行数>][-r <作业名称>][-s ][-S <作业名称>]

参数说明

-A  将所有的视窗都调整为目前终端机的大小。

-d <作业名称>  将指定的screen作业离线。

-h <行数>  指定视窗的缓冲区行数。

-m  即使目前已在作业中的screen作业,仍强制建立新的screen作业。

-r <作业名称>  恢复离线的screen作业。

-R  先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。

-s  指定建立新视窗时,所要执行的shell。

-S <作业名称>  指定screen作业的名称。

-v  显示版本信息。

-x  恢复之前离线的screen作业。

-ls或--list  显示目前所有的screen作业。

-wipe  检查目前所有的screen作业,并删除已经无法使用的screen作业。

常用screen参数

screen -S yourname -> 新建一个叫yourname的session

screen -ls -> 列出当前所有的session

screen -r yourname -> 回到yourname这个session

screen -d yourname -> 远程detach某个session

screen -d -r yourname -> 结束当前session并回到yourname这个session

使用kill杀掉进程,使用screen -wipe命令清除该会话

yum下载安装sc使用screen -wipe命令清除该会话reen或http://ftp.gnu.org/gnu/screen/下载

安装screen

date

语法格式

date命令,用来显示和设置系统日期、时间。

1.  显示时间。date +%STRINT

%a 星期几的简写

%A 星期几的全写,比如date +%A%a

%b 月分简写

%B 月分全写

%c 日期,星期,时间

%d 两位数日期

%D mm/dd/yy

%e 两位数日期去零,1--31

%F 日期,yyyy-mm-dd

%H 24小时

%I 12小时

%j 一年的第好多天

%m 两位数月

%M 分钟

%s 从 1970年1月1日0点0分0秒到现在历经的秒数 (GNU扩充)

%S 秒

%T 24小时间,常用,hh24:mm:ss

%y 两位年

%Y 4位年

%Z 时区


常用

 年月日:date +"%Y-%m-%d" =%F

时分秒:date +"%H:%M:%S" =%T

2.  设置日期时间

date –s STRINT 任意格式

date –s “2008-05-12”

date –s “19:23:17”

date -d "next monday" 下周一的日期

date –d “-100 days ago”100天以后

date –d “100 days ago”100天以前

3. clock

      主板时钟

   hwclock=clock

     -s hctosys 把硬件时钟写入系统

     -w systohc 把系统时间写到硬件

ifconfig

fconfig工具不仅可以被用来简单地获取网络接口配置信息,还可以修改这些配置。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。

命令常见参数说明

参数

说明

-a

显示全部接口信息。

-s

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

address

为网卡设置IPv4地址。

add

给指定网卡配置IPv6地址。

del

删除指定网卡的IPv6地址。

netmask

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

dstaddr

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

tunnel

建立隧道。

hw

设置硬件地址。

mtu

设置最大传输单元。

[-]arp

设置指定网卡是否支持ARP协议。-表示不支持arp。

multicast

为网卡设置组播标志。

[-]promisc

设置是否支持网卡的promiscuous模式,如果选择此参数,网卡将接收网络中发给它所有的数据包。-表示关闭混杂模式。

txqueuelen

为网卡设置传输列队的长度。

up

启动指定网卡。

down

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

简单实例

3.1 显示网络设备信息

(1) 显示激活的网卡信息

ifconfig

(2) 显示所有的网卡信息

ifconfig -a

(3) 显示简要的网卡信息

ifconfig -s

3.2 启动关闭指定网卡

(1) 关闭网卡

ifconfig eth0 down

(2) 启动网卡

ifconfig eth0 up

3.3 配置和删除ip地址

(1) 配置ip

// 配置ip地址

ifconfig eth0 192.168.1.100

// 配置ip地址和子网掩码

ifconfig eth0 192.168.1.100 netmask 255.255.255.0

// 配置ip地址、子网掩码和广播地址

ifconfig eth0 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255

(2) 单网卡添加多个IP地址

ifconfig eth0:0 192.168.1.100 netmask 255.255.255.0 up

ifconfig eth0:1 192.168.2.100 netmask 255.255.255.0 up

(3) 删除IP地址

ifconfig eth0 del 192.168.1.100

3.4 修改MAC地址

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

3.5 启用和关闭ARP协议

(1) 启用arp

ifconfig eth0 arp

(2) 禁用arp

ifconfig eth0 -arp

禁用arp的时候,可以看到出现NOARP字段。

[root@localhost ~]# ifconfig eth0 arp

[root@localhost ~]#

[root@localhost ~]# ifconfig eth0

eth0: flags=4163 mtu 1500

inet 192.168.1.135 netmask 255.255.255.0 broadcast 192.168.1.255

inet6 fe80::20c:29ff:fe9b:52d3 prefixlen 64 scopeid 0x20

ether 00:aa:bb:cc:dd:ee txqueuelen 1000 (Ethernet)

RX packets 2635 bytes 204710 (199.9 KiB)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 1071 bytes 144688 (141.2 KiB)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

[root@localhost ~]# ifconfig eth0 -arp

[root@localhost ~]#

[root@localhost ~]# ifconfig eth0

eth0: flags=4291 mtu 1500

inet 192.168.1.135 netmask 255.255.255.0 broadcast 192.168.1.255

inet6 fe80::20c:29ff:fe9b:52d3 prefixlen 64 scopeid 0x20

ether 00:aa:bb:cc:dd:ee txqueuelen 1000 (Ethernet)

RX packets 2636 bytes 204770 (199.9 KiB)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 1071 bytes 144688 (141.2 KiB)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

export

在 Linux 系统中,除了 export 之外,env、set 和 declare 这三个命令也可以显示 Shell 中的变量。那这四个命令有什么区别呢?

这个问题,我们需要从 Shell 变量说起。Shell 的变量,可以分为“环境变量”和“自定义变量”两种类型,两者的区别在于作用范围不同。环境变量可以在其进程的子进程中继续有效,而自定义变量的势力范围则无法延伸到其进程的子进程中。

好了,知道了环境变量和自定义变量的区别,我们正式开始介绍 export/env/set/declare 的区别:

env:显示当前用户的环境变量,但不会显示其自定义变量。

export:功能同 env 一样,也是显示当前用户的环境变量,只不过该命令的输出是按变量名进行排序的。

declare:显示当前 Shell 中定义的所有变量,包括用户的环境变量和自定义变量,该命令的输出按变量名进行排序。

set:功能同 declare 一样,显示当前 Shell 中定义的所有变量,包括用户的环境变量和自定义变量。

你可能感兴趣的:(5、总结Linux常用命令使用格式,并用实例说明。例如echo、screen、date、ifconfig、export等命令)