Linux扩展正则表达式及sed生产环境用法

简介:

1、取本机ip地址

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
[root@centos6 ~] # ifconfig
eth1      Link encap:Ethernet  HWaddr 00:0C:29:35:DD:AB
           inet addr:10.1.253.95  Bcast:10.1.255.255  Mask:255.255.0.0
           inet6 addr: fe80::20c:29ff:fe35:ddab /64  Scope:Link
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
           RX packets:378023 errors:0 dropped:0 overruns:0 frame:0
           TX packets:12444 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000
           RX bytes:46926222 (44.7 MiB)  TX bytes:1240063 (1.1 MiB)
eth2      Link encap:Ethernet  HWaddr 00:0C:29:35:DD:B5
           inet addr:192.168.226.135  Bcast:192.168.226.255  Mask:255.255.255.0
           inet6 addr: fe80::20c:29ff:fe35:ddb5 /64  Scope:Link
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
           RX packets:2539 errors:0 dropped:0 overruns:0 frame:0
           TX packets:225 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000
           RX bytes:281133 (274.5 KiB)  TX bytes:39650 (38.7 KiB)
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:65536  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)
[root@centos6 ~] # ifconfig |awk -F '[: ]+' 'NR==2{print $4}'
10.1.253.95
[root@centos6 ~] # ifconfig
eth1      Link encap:Ethernet  HWaddr 00:0C:29:35:DD:AB
           inet addr:10.1.253.95  Bcast:10.1.255.255  Mask:255.255.0.0
           inet6 addr: fe80::20c:29ff:fe35:ddab /64  Scope:Link
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
           RX packets:379965 errors:0 dropped:0 overruns:0 frame:0
           TX packets:12615 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000
           RX bytes:47097014 (44.9 MiB)  TX bytes:1264173 (1.2 MiB)
 
eth2      Link encap:Ethernet  HWaddr 00:0C:29:35:DD:B5
           inet addr:192.168.226.135  Bcast:192.168.226.255  Mask:255.255.255.0
           inet6 addr: fe80::20c:29ff:fe35:ddb5 /64  Scope:Link
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
           RX packets:2541 errors:0 dropped:0 overruns:0 frame:0
           TX packets:227 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000
           RX bytes:281535 (274.9 KiB)  TX bytes:40052 (39.1 KiB)
 
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:65536  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)
 
[root@centos6 ~] # ifconfig |head -2
eth1      Link encap:Ethernet  HWaddr 00:0C:29:35:DD:AB
           inet addr:10.1.253.95  Bcast:10.1.255.255  Mask:255.255.0.0
[root@centos6 ~] # ifconfig |head -2 |sed -r 's/^.*addr:(.*)  Bca.*$/\1/g'
eth1      Link encap:Ethernet  HWaddr 00:0C:29:35:DD:AB
10.1.253.95
[root@centos6 ~] # ifconfig |head -2|tail -1 |tr -s ' ' ':' |cut -d: -f4
10.1.253.95
[root@centos6 ~] #

1.1、取出本机所有的IP地址

1
2
3
4
5
6
7
8
9
10
[root@centos6 ~] # ifconfig |tr -cs '[:digit:].' '\n'|sort -t. -k4|tail -8
255.0.0.0
255.255.0.0
255.255.255.0
127.0.0.1
192.168.226.135
10.1.255.255
192.168.226.255
10.1.253.95
[root@centos6 ~] #

2、取各分区利用率的数值

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[root@centos6 ~] # df |grep "sd.*"
/dev/sda3       121455724 3990720 111288700   4% /
/dev/sda1          194241   34082    149919  19%  /boot
/dev/sdb         20511356   44992  19417788   1%  /mnt
[root@centos6 ~] # df |grep "sd.*"|tr -s ' ' ':'
/dev/sda3 :121455724:3990720:111288700:4%:/
/dev/sda1 :194241:34082:149919:19%: /boot
/dev/sdb :20511356:44992:19417788:1%: /mnt
[root@centos6 ~] # df |grep "sd.*"|tr -s ' ' ':'|cut -d: -f1,5
/dev/sda3 :4%
/dev/sda1 :19%
/dev/sdb :1%
[root@centos6 ~] # df |grep "sd.*"|tr -s ' ' ':'|cut -d: -f1,5|sort -nr
/dev/sdb :1%
/dev/sda3 :4%
/dev/sda1 :19%
[root@centos6 ~] #

3、统计/etc/init.d/functions 文件中每个单词出现的次数,并按频率从高到低显示

1
2
3
4
5
6
7
8
9
10
11
[root@centos6 ~] # cat /etc/init.d/functions |tr -cs '[:alpha:]' '\n'|sort|uniq -c |sort-nr
      83  if
      77  then
      75 pid
      73  echo
      72  fi
      61  return
      57 dev
      54  file
      50 n
      46  local

4、/etc/rc.d/init.d/functions或/etc/rc.d/init.d/functions/"  取目录名

1
2
3
[root@centos6 ~] # echo "/etc/init.d/functions"|sed -r 's#^(/.*/)[^/]+/?#\1#g'
/etc/init .d/
[root@centos6 ~] #

4.1、/etc/rc.d/init.d/functions或/etc/rc.d/init.d/functions/"  取基名


1
2
3
[root@centos6 ~] # echo "/etc/init.d/functions/"|sed -r 's#/.*/([^/]+)#\1#g'
functions/
[root@centos6 ~] #



本文转自chengong1013 51CTO博客,原文链接:http://blog.51cto.com/purify/1835797,如需转载请自行联系原作者
相关文章
|
13天前
|
安全 Linux 虚拟化
|
6月前
|
存储 安全 Shell
【Shell 命令集合 文件管理】Linux显示和修改文件或目录的扩展属性 lsattr命令使用教程
【Shell 命令集合 文件管理】Linux显示和修改文件或目录的扩展属性 lsattr命令使用教程
125 0
|
3月前
|
存储 监控 Linux
|
3月前
|
缓存 网络协议 Linux
扩展Linux网络栈
扩展Linux网络栈
75 3
|
3月前
|
存储 安全 Linux
【Azure 应用服务】App Service For Linux 怎么安装Composer,怎么安装PHP扩展,怎么来修改站点根路径启动程序?
【Azure 应用服务】App Service For Linux 怎么安装Composer,怎么安装PHP扩展,怎么来修改站点根路径启动程序?
|
3月前
|
存储 数据挖掘 Linux
在Linux中,LVM(逻辑卷管理)的主要优势是什么?如何扩展LVM卷?
在Linux中,LVM(逻辑卷管理)的主要优势是什么?如何扩展LVM卷?
|
5月前
|
Ubuntu 中间件 Linux
linux php添加扩展zip libzip ZipArchive功能
linux php添加扩展zip libzip ZipArchive功能
176 1
|
6月前
|
Python
正则表达式高级用法
正则表达式是强大的文本匹配工具,常用于搜索、匹配和验证字符串。高级用法包括:捕获组(区分需要提取的内容)、非捕获组(减少开销)、零宽断言(定位匹配位置)、反向引用(匹配相同内容)、嵌入代码(实现复杂逻辑)、贪婪与非贪婪匹配(控制匹配范围)和递归匹配(处理嵌套结构)。了解这些高级技巧能提升字符串操作效率。示例展示了验证Email、电话号码、提取URL和清理多余空格的正则表达式应用。
|
5月前
|
缓存 Linux Shell
Linux 内存管理与 Swap 空间扩展实践
该文介绍了Linux系统中`free`命令的使用,解析了其输出信息,包括物理内存(总内存、已用、空闲、缓存)和交换空间(总大小、使用和空闲)。Linux优先使用物理内存作缓存,当内存紧张时使用Swap空间。文章还提供了扩展Swap空间的步骤,并强调适度Swap使用对性能的影响,建议合理平衡物理内存和Swap的比例。
|
6月前
|
Rust 监控 安全
【专栏】`ripgrep`(rg)是Linux下快速、内存高效的文本搜索工具,用Rust编写,支持PCRE2正则表达式
【4月更文挑战第28天】`ripgrep`(rg)是Linux下快速、内存高效的文本搜索工具,用Rust编写,支持PCRE2正则表达式。相比`grep`,它在处理大文件和复杂模式时更具优势。安装`rg`可通过软件包管理器,如在Debian系系统中使用`sudo apt install ripgrep`。基本用法包括简单搜索、递归搜索、忽略大小写、显示行号等。高级功能包括固定字符串搜索、多文件匹配、并行搜索、排除选项和区域搜索。适用于日志分析、代码审查等场景,是提升工作效率的利器。
530 4