![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
shell
文章平均质量分 91
脚本
是个笨小孩
这个作者很懒,什么都没留下…
展开
-
11.iptables 防火墙
在Internet中,企业通过架设各种应用系统来为用户提供各种网络服务,如Web网站、电子邮件系统、FTP服务器、数据库系统等。那么,如何来保护这些服务器,过滤企业不需要的访问甚至是恶意的入侵呢?Linux的防火墙体系主要工作在网络层,针对TCP/IP数据包实施过滤和限制,属于典型的包过滤防火墙(或称为网络层防火墙)Linux系统的防火墙体系基于内核编码实现,具有非常稳定的性能和高效率,也因此获得广泛的应用规则的作用对数据进行过滤或处理链的作用容纳各种防火墙规则链的分类依据。...原创 2022-07-17 21:21:37 · 347 阅读 · 0 评论 -
4.隔壁小孩都会的,各种shell符号{}[]等
1.命令组。括号中的命令将会新开一个子shell顺序执行,所以括号中的变量不能够被脚本余下的部分使用。括号中多个命令之间用分号隔开,最后一个命令可以没有分号,各命令和括号之间不必有空格2.命令替换。等同于cmd,shell扫描一遍命令行,发现了( c m d ) 结 构 ,便将(cmd)中的cmd执行一次,得到其标准输出,再将此输出放到原来命令。有些shell不支持,如tcsh3.用于初始化数组1.2 双小括号 (( ))1.整数扩展。这种扩展计算是整数型的计算,不支持浮点型。((exp))结构扩展并计原创 2022-07-11 17:56:48 · 151 阅读 · 0 评论 -
8.shell文件处理三剑客之sed
sed(Stream EDitor)是一个强大而简单的文本解析转换工具,可以读取文本,并根据指定的条件对文本内容进行编辑(删除、替换、添加、移动等),最后输出所有行或者仅输出处理的某些行。sed 也可以在无交互的情况下实现相当复杂的文本处理操作,被广泛应用于 Shell 脚本中,用以完成各种自动化处理任务读取:sed 从输入流(文件、管道、标准输入)中读取一行内容并存储到临时的缓冲区中(又称模式空间,pattern space)执行:默认情况下,所有的 sed 命令都在模式空间中顺序地执行,除非指定了行原创 2022-07-11 17:59:56 · 226 阅读 · 0 评论 -
7.shell实用的小工具cut等
cut :列截取工具cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出如果不指定 File(文件) 参数,cut 命令将读取标准输入。必须指定 -b、-c 或 -f 标志之一-b:按字节截取-c:按字符截取,常用于中文-d:指定以什么为分隔符截取,默认为制表符(空格)-f:通常和-d一起注:cut 只擅长于处理单个字符为间隔的文本是一个以行为单位对文件内容进行排序的工具,也可以根据不同的数据类型来排序。例如数据和字符的排序就不一样sort [选项] 参数常用选项:原创 2022-07-11 17:58:58 · 214 阅读 · 0 评论 -
9.shell文本处理三剑客之awk
awk是一种处理文本文件的语言,是一个强大的文本分析工具。awk是一种处理文本文件的语言,是一个强大的文本分析工具它是专门为文本处理设计的编程语言,也是行处理软件,通常用于扫描、过滤、统计汇总工作数据可以来白标准输入也可以是管道或文件20世纪70年代诞生于贝尔实验室,现在centos7用的是gawk当读到第一行时,匹配条件,然后执行指定动作,再接着读取第二行数据处理,不会默认输出如果没有定义匹配条件默认是匹配所有数据行,awk隐含循环,条件匹配多少次动作就会执行多少次;逐行读取文本,默认以空格或tab原创 2022-07-11 18:02:39 · 469 阅读 · 0 评论 -
6.shell之正则表达式
Linux中常用的有两种正则表达式:1.正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本2.正则表达式,通常用于判断语句中,用来检查某一字符串是否满足某一格式3.正则表达式是由普通字符与字符组成4.普通字符包括大小写字母,数字,标点符号及一些其他符号5.元字符是指在正则表达式中具有特殊意义的专用字符,可以用来规定其前导字符(即位于元字符前面的字符)在目标对象中的出现模式支持的工具: grep、egrep、sed、awk特殊字符:\: 转义字符,用于取消特殊符号的含义,例: !、\n、$等^: 匹原创 2022-07-11 17:58:09 · 2046 阅读 · 0 评论 -
3.信你能理解的!shell脚本之循环语句与函数,数组,冒泡排序
在实际工作中,经常会遇到某项任务需要多次执行的情况,而每次执行时仅仅是处理的 对象不一样,其他命令相同例如,根据通讯录中的姓名列表创建系统账号,根据服务器清 单检查各主机的存活状态,根据 IP 地址黑名单设置拒绝访问的防火墙策略等当面对各种列表重复任务时,使用简单的 if 语句已经难以满足要求,而顺序编写全部代码更是显得异常烦琐、困难重重。而在不同场景使用不同的循环语句,可以很好地解决类似的问题for语句的结构小结:for 循环中 for i in {list} 使用方式i为自定义变量名in 首先将 i原创 2022-07-11 17:56:19 · 126 阅读 · 0 评论 -
10.expect免交互
建立在tcl语言基础上的一个工具,常被用于进行自动化控制和测试,解决shell脚本中交互相关的问题主要作用:1.追踪需要交互的指令2.捕捉提示进行交互的关键词3.传入交互指令,回车执行3.基本命令3.1脚本解释器3.2 spawn3.3 expect判断上次输出结果中是否包含指定的字符串,如果有则立即返回,否则就等待超时时间后返回只能捕捉由spawn启动的进程的输出用于接收命令执行后的输出,然后和期望的字符串匹配3.4 send向进程发送字符串,用于模拟用户的输入;该命令不能自动原创 2022-07-11 18:06:25 · 141 阅读 · 0 评论 -
5.这简单的 “echo” 用法隔壁小孩能不会吗!
\b 转义后相当于按退格键(backspace) ,但前提是"\b"后面存在字符; “\b"表示删除前一一个字符,”\b\b" 表示删除前两个字符\c 不换行输出,在"\c"后面不存在字符的情况下,作用相当于echo -n;但是当"\c"后面仍然存在字符时,"\c"后面的字符将不会被输出\n 换行,被输出的字符从"\n"处开始另起一行\f 换行,但是换行后的新行的开头位置连接着上一行的行尾\v 与\f相同\t 转以后表示插入tab,即横向制表符\r 光标移至行首,但不换行,相当于使用"\r"以后的字符覆盖"原创 2022-07-11 17:57:21 · 461 阅读 · 0 评论 -
2.shell脚本之条件语句
语法格式:格式一:test 条件表达式格式二:[ 条件表达式 ] //中括号和表达式中间至少应有一个空格或[[ 条件表达式 ]]常用的测试选项:-d:测试是否为目录(Directory)-e:测试目录或文件是否存在(Exist)-f:测试是否为文件(File)-r:测试当前用户是否有权限读取(Read)-w:测试当前用户是否有权限写入(Write)-x:测试当前用户是否有权限执行(eXcute)-b:测试是否为设备文件-c:测试是否为字符设备文件-s:测试存在且文件大小为空-原创 2022-07-01 14:46:02 · 371 阅读 · 0 评论 -
1.Shell编程规范与变量
shell是一个命令解释器,它在操作系统的最外层,负责直接与用户进行对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出到屏幕反馈给用户。这种对话方式可是交互也可以是非交互式的,我们所输入的命令计算机是不识别的,这时就需要一种程序来帮助我们进行翻译,变成计算机能识别的二进制程序,同时又把计算机生成的结果返回给我们在需要完成大量复杂、重复性的工作时,不需要在命令行重复执行命令,直接运行shell脚本即可,大大的节省了时间提高了效率命令解释器4.1为什么系统上合法的shell要写入 /e原创 2022-07-01 14:45:32 · 326 阅读 · 0 评论