wordpress网站的跳出率很低,单机游戏网页版,温州网站优化定制,做网站比较便宜目录 一、sed
1.sed命令选项
2.语法选项
3.sed脚本格式
4.搜索替代
5.分组后向引用
1.提取版本号#xff1a;
2.提取IP地址
3.提取数字权限
6.变量
二、免交互
1.多行重定向
2.免交互脚本
总结#xff1a;本章主要介绍了seq和免交互的用法及相关知识 一、sed
s…目录 一、sed
1.sed命令选项
2.语法选项
3.sed脚本格式
4.搜索替代
5.分组后向引用
1.提取版本号
2.提取IP地址
3.提取数字权限
6.变量
二、免交互
1.多行重定向
2.免交互脚本
总结本章主要介绍了seq和免交互的用法及相关知识 一、sed
sed是行编辑器
sed [选项] 语法1 [input file]
1.sed命令选项
-n 不输出模式空间内容到屏幕关闭自动打印
-e 多点编辑
-f 从指定文件中读取编辑脚本
-r,-E 使用扩展正则表达式
-i.bak 备份文件并原处编辑修改前会先备份文件
-ir 不支持
-i -r 支持
-ri 支持
-ni 会清空未匹配的行
2.语法选项
p 打印
q 退出
d 删除
a 追加
c 替换
i 添加
w 第二行写入文件 显示行号
r 读取指定文件的文本至文件的行前 sed 会自动打印
[rootlocalhost sy]# sed /etc/fstab#
# /etc/fstab
# Created by anaconda on Mon Oct 9 18:28:14 2023
#
# Accessible filesystems, by reference, are maintained under /dev/disk
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 0 0
UUIDc691f6ac-d1a0-46ad-b02b-7c6256963e6b /boot xfs defaults 0 0
/dev/mapper/centos-home /home xfs defaults 0 0
/dev/mapper/centos-swap swap swap defaults 0 0
[rootlocalhost sy]# sed支持重定向输入
[rootlocalhost sy]# sed /etc/fstab#
# /etc/fstab
# Created by anaconda on Mon Oct 9 18:28:14 2023
#
# Accessible filesystems, by reference, are maintained under /dev/disk
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 0 0
UUIDc691f6ac-d1a0-46ad-b02b-7c6256963e6b /boot xfs defaults 0 0
/dev/mapper/centos-home /home xfs defaults 0 0
/dev/mapper/centos-swap swap swap defaults 0 0
[rootlocalhost sy]# 3.sed脚本格式
#指定的行$最后一行
## 从#行到#行
## 从#行到#行 如34表示37行
/pat1/ ,/pat2/ 第一个正则表达式和第二个正则表达式之间的行
#/pat/ 从#号行为开始找到pat为止
/pat/,# 找到#号个pat为止
步进~
1~2 奇数行
2~2 偶数行
sed -n n;p 打印偶数行
sed -n p;n 打印奇数行 sed不加-n会再打印一遍
[rootlocalhost sy]# seq 10|sed p
1
1
2
2
3
3
4
4
5
5
6
6
7
7
8
8
9
9
10
10
[rootlocalhost sy]# seq 10|sed -n p
1
2
3
4
5
6
7
8
9
10
[rootlocalhost sy]# 4.搜索替代
s/旧字符/新字符/修饰符 查找替换支持使用其它分隔符可以是其它形式如
s或者s###
替换修饰符
g 行内全局替换
p 显示替换成功的行
w /PATH/FILE 将替换成功的行保存至文件中
I,i 忽略大小写 5.分组后向引用 第一个123对应\1
第二个abc对应\2
第三个xyz对应\3 1.提取版本号
[rootlocalhost ~]# cat nm|sed -nr s/.*-(.*).jar/\1/p
1.9.7
1.9.7
2.7.7
3.4
1.0
0.7.6
5.0.4
1.9.5
1.64
1.46
1.64
2.5.5
[rootlocalhost ~]# cat nm
ant-1.9.7.jar
ant-launcher-1.9.7.jar
antlr-2.7.7.jar
antlr-runtime-3.4.jar
aopalliance-1.0.jar
archaius-core-0.7.6.jar
asm-5.0.4.jar
aspectjweaver-1.9.5.jar
bcpkix-jdk15on-1.64.jar
bcprov-jdk15-1.46.jar
bcprov-jdk15on-1.64.jar
checker-compat-qual-2.5.5.jar 2.提取IP地址
[rootlocalhost ~]# ifconfig ens33|sed -nr s/.*inet (.*) netmask.*/\1/p
172.16.114.10
[rootlocalhost ~]# ifconfig ens33
ens33: flags4163UP,BROADCAST,RUNNING,MULTICAST mtu 1500inet 172.16.114.10 netmask 255.255.255.0 broadcast 172.16.114.255inet6 fe80::20c:29ff:fe5b:b87a prefixlen 64 scopeid 0x20linkether 00:0c:29:5b:b8:7a txqueuelen 1000 (Ethernet)RX packets 69808 bytes 47124205 (44.9 MiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 59903 bytes 45306327 (43.2 MiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0[rootlocalhost ~]# 3.提取数字权限
[rootlocalhost ~]# stat nm|sed -nr 4s/.*([0-7]{4}).*/\1/p
0644
[rootlocalhost ~]# stat nm文件nm大小257 块8 IO 块4096 普通文件
设备fd00h/64768d Inode100793031 硬链接1
权限(0644/-rw-r--r--) Uid( 0/ root) Gid( 0/ root)
环境unconfined_u:object_r:admin_home_t:s0
最近访问2023-11-28 18:39:47.041303261 0800
最近更改2023-11-28 18:38:29.647928413 0800
最近改动2023-11-28 18:38:29.647928413 0800
创建时间-
[rootlocalhost ~]# 6.变量
[rootlocalhost ~]# nameroot
[rootlocalhost ~]# sed -nr /$name/p /etc/passwd
[rootlocalhost ~]# head -n2 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
[rootlocalhost ~]# sed -nr /$name/p /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
[rootlocalhost ~]# sed -nr /$name/p /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin二、免交互
1.多行重定向
eof开始(小写大写都可以)
eof结束(小写大写都可以)
[rootlocalhost ~]# cat eofsdksdmpsvosdvlmeof
sdk
sdmpsvo
sdvlm
[rootlocalhost ~]# [rootlocalhost ~]# cat 123 EOFkdsvnfdlmfmdkddmfkvEOF
[rootlocalhost ~]# cat 123
kdsvn
fdlm
fmdk
ddmfkv
[rootlocalhost ~]# [rootlocalhost ~]# tee /opt/mysql.repo eof[al]namealbaseurlfile:///mntgpgcheck 0eof
[al]
nameal
baseurlfile:///mnt
gpgcheck 0
[rootlocalhost ~]# cat /opt/mysql.repo
[al]
nameal
baseurlfile:///mnt
gpgcheck 0
[rootlocalhost ~]# 2.免交互脚本
1.expect 在/usr/bin/expect
#!/usr/bin/expect
2.spawn (开启免交互)[命令]
expect 捕捉屏幕上的关键字
exp_continue 继续捕捉屏幕上的字
send 发送指令
interact 代表退出expect 会留在新的终端
expect eof 代表结束
[rootlocalhost ~]# vim jc
[rootlocalhost ~]# chmod x jc
[rootlocalhost ~]# ./jc
spawn ssh 172.16.114.20
root172.16.114.20s password:
Last login: Tue Nov 28 19:39:01 2023 from 172.16.114.10
[rootlocalhost ~]# exit
登出
Connection to 172.16.114.20 closed. #!/usr/bin/expect
spawn ssh 172.16.114.20
expect {yes/no { send yes\n;exp_continue }password { send 123\n }
}
interact总结本章主要介绍了seq和免交互的用法及相关知识