![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Shell脚本攻略
文章平均质量分 85
Shell脚本攻略
cronaldo91
这个作者很懒,什么都没留下…
展开
-
Shell脚本攻略:循环语句while、until
进入循环的条件正好和while相反,while进入循环的条件是:condition成立时,就进入循环。每家商店有五种商品选购(衣服500元,裤子400元,鞋子350元,帽子150元,袜子50元),循环通常用于当判断条件不成立时才进行循环,一旦判断条件成立,就终止循环,用于完全结束一个循环,结束循环体。进入循环的条件是:condition不成立时,就执行循环。用于不知道循环次数,需要主动结束循环或达到条件结束循环。,系统将完全结束循环,开始执行循环之后的代码。不仅可以结束其所在的循环,还可结束其外层循环。原创 2023-05-30 18:37:55 · 3856 阅读 · 0 评论 -
Linux发送接收邮件
(5)使用命令echo "This is second email" | mail -s "email" 用户名 发送邮件。(4)root用户发送邮件内容为"This is first email" 标题为 "email"给root用户。(3)使用命令systemctl start sendmail启动sendmail(此过程消耗时间)(2)在开启服务IMAP/SMTP后点击开启即可获得授权码。(3)在/etc/mail/rc文件中配置以下信息。(5)在root用户使用命令mail查看邮件。原创 2023-06-07 21:56:15 · 2271 阅读 · 0 评论 -
Shell脚本攻略:数组
数组是Shell的一种特殊变量,是一组数据的集合,里面的每个数据被称为一个数组元素。当前Bash仅支持一维索引数组和关联数组,Bash对数组的大小没有限制。(1)索引数组① 方式一数组名=(value0valuelvalue2② 方式二shell中,用小括号( )来表示数组,数组元素之间用空格来分隔数组名=(value0 valuel value2 …)③ 方式三 采用键值对的形式赋值数组名=( [0]=value [1]=value [2]=value …)④ 方式四。原创 2023-06-01 15:49:48 · 2409 阅读 · 0 评论 -
Shell脚本攻略:echo $命令的作用
(1)$* 与 $@$*,$@一样,都是传递整个参数列表,但是当被""引用时,$@不变,为多个字符串,而$*为一个字符串,并且如果这个参数列表为空,则字符串为空字符串,而非不存在.。原创 2023-06-01 10:45:17 · 3885 阅读 · 0 评论 -
Shell脚本攻略:文本三剑客之awk
③print打印顺序:'BEGIN{print "1"} END {print "2"} {print "3"} ',首先打印BEGIN后的print 1,然后打印print 3 最后打印END后的print 2,BEGIN表示第一个打印,END表示最后打印。②print动作:打印,打印'{print $1}'即为打印第一列,'{print $n}'即打印为第n列,'{print $n,$m}'即为打印第n列和第m列。awk非常复杂,所以这不是一个完整的指南,但应该给你一个知道什么 awk 可以做。原创 2023-06-07 21:22:22 · 1190 阅读 · 0 评论 -
Shell脚本攻略:Shell编程规范与变量
(1)Shell简介Linux 系统中的 Shell 是一个特殊的应用程序,它介于操作系统内核与用户之间,充当 了一个“命令解释器”的角色,负责接收用户输入的操作指令(命令)并进行解释,将需要执 行的操作传递给内核执行,并输出执行结果。(2)Shell脚本的概念及处理逻辑① Shell脚本1)将要执行的命令按顺序保存到一个文本文件2)给该文件可执行权限3)可结合各种Shell控制语句完成更复杂的操作② 处理处理1)顺序执行:程序按从上到下的顺序执行。原创 2023-05-25 19:54:22 · 2071 阅读 · 0 评论 -
Shell脚本攻略:shell函数应用
在主程序中调用函数。② return退出函数,脚本使用return退出函数时只退出函数,不影响脚本后续内容执行。① exit退出函数,脚本中使用exit退出函数时直接退出整个脚本,脚本后续内容不再执行。函数在shell脚本中仅在当前shell环境中有效Shell脚本中变量默认全局有效。(1)当函数中有$1、$2等位置变量时表示的是调用函数时函数名后跟着的位置变量12。(2)函数外的$1、$2等才表示是执行脚本时脚本名称后跟着的位置变量12。在一个脚本当中建立多个函数,用于别的脚本来调用该库中的函数。原创 2023-05-31 19:13:27 · 1764 阅读 · 0 评论 -
Shell脚本攻略:条件语句if、case
|或-o 表示或的意思,前面表达式1或命令1为真则整个表达式为真,前面表达式为假或命令为假才会执行后面的表达式2或命令2。if的多分支是逐条判断,相对而言效率会低一些,而case语句,不满足的条件直接跳过,相对执行效率快一些。&&或-a 表示且的意思,前面表达式或命令1为真才会执行操作符后面的表达式2或命令2。[ 字符窜1 = 字符窜2 ] 或者 [ 字符窜1 == 字符窜2 ] 判断是否相同。① 格式1:[ 表达式1 ] 操作符 [ 表达式2 ]= 字符窜2 ] 判断是否不相同。原创 2023-05-26 19:54:39 · 1416 阅读 · 0 评论 -
Shell脚本攻略:文本三剑客之sed
sed 英文全称为stream editor,sed 对输入流(文件或来自管道的输入)执行基本文本转换单通过流,所以效率很高。格式:sed '/可使用正则表达式选择范围/'s/查找内容/替换内容/g g表示全文,固定格式的///可以用###等符号替换。同时在 使用{n}、{n,}、{n,m}时,括号{}前不需要加反斜杠\。n在p前面,跳过一行,打印下一行,就是偶数行;( )内的按顺序标为123 ,引用时\1调用第一个()的内容,\n表示调用第n个()的内容。sed有一个默认输出,加上P,会打印两行。原创 2023-06-03 15:04:18 · 873 阅读 · 0 评论 -
Apache logs目录下找不到access_log文件
(1)问题:apache服务器logs目录下,没有access_log文件。原创 2023-06-10 16:31:31 · 380 阅读 · 0 评论 -
Shell脚本攻略:循环语句for
(1)遇到for循环问题先不急,先确定自己的运行环境,如果需要在Ubuntu环境下运行以上三种方法,可以把dash修改为bash环境;3.seq方式(适合bash、dash):(注意:seq 1 100使用反引号括起来,且与in之间保持一个空格)用户输入密码,脚本判断密码是否正确,正确密码为123456,输入正确提示正确信息,连续输错3次则报警。修改方法:Ubuntu和CentOS系统下使用for循环的区别以及bash环境修改。提示用户输入一个小于100的整数,并计算从1到该数之间所有整数的和。原创 2023-05-27 17:38:10 · 2108 阅读 · 0 评论 -
Shell脚本攻略:shell实现pxe无人值守安装
到这一步,表示内核与伪文件系统已经加载完毕,准备根据。服务是需要先配置一下配置文件才能启动的,刚安装好的配置文件。应答文件进行自动安装,但是提示连接服务,请求文件失败。原因分析:安装程序未能找到安装文件,无法加载所致。密码可以使用明文,也可以使用加密过的值。存在多个,检索行时无法锁定目标行。配置文件,发现服务器地址多了一个“原因分析:通过关键词检索所在行,是空的,所以启动不起来,报错。没有使用匿名用户模式,修改。服务程序出现了问题,即是。通过网卡配置文件,检查。在没在匿名用户下,要求。原创 2023-06-06 22:02:55 · 670 阅读 · 0 评论 -
Shell脚本攻略:Linux防火墙(一)
③防火墙( FireWall ):隔离功能,工作在网络或主机边缘,对进出网络或主机的数据包基于一定的规则检查,并在匹配某规则时由规则定义的行为进行处理的一组功能的组件,基本上的实现都是默 认情况下关闭所有的通过型访问,只开放允许访问的策略,会将希望外网访问的主机放在DMZ (demilitarized zone)网络中。--icmp-type 指定icmp的type值制定规则。--dport 指明目的端口,使用格式: --dport 端口或 端口1:端口2(端口1到端口2的连续端口范围指定)。原创 2023-06-09 15:04:18 · 1069 阅读 · 0 评论 -
Shell脚本攻略:expect脚本免交互
Here Document也被称为here-document/here-text/heredoc/hereis/here-string/here-script,在Linux/Unix中的shell中被广泛地应用,尤其在于用于传入多行分割参数给执行命令。建立在tcl(tool command language)语言基础上的一个工具,常被用于进行自动化控制和测试,解决shell脚本中交互的相关问题,使用前需要安装(yum install -y expect)。(4)原创 2023-06-08 18:59:33 · 881 阅读 · 0 评论 -
Shell脚本攻略:通配符、正则表达式
通配符英文为REGEXP(Regular Expressions),它是由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符)不表示字符字面意义,而表示控制或通配的功能,类似于增强版的通配符功能,但与通配符不同,通配符功能是用来处理文件名,而正则表达式是处理文本内容中字符。(9)表示匹配前面的字符最少m次最多n次 \{m,n\}(11) 表示匹配前面的字符最多n次 \{,n\}(6)表示匹配前面的字符1次或0次,即可有可无 \?(8)表示匹配前面的字符n次 \{n\}原创 2023-06-02 15:27:33 · 2256 阅读 · 0 评论 -
Shell脚本攻略:文本三剑客之grep
所以,从grep的全称中可以了解到,grep是一个可以利用”正则表达式”进行”全局搜索”的工具,grep会在文本文件中按照指定的正则进行全局搜索,并将搜索出的行打印出来。grep是Linux中最常用的”文本处理工具”之一,grep与sed、awk合称为Linux中的三剑客。uniq命令用于报告或者忽略文件中连续的重复行,常与sort命令结合使用。(5)去重(统计连续重复的行的次数,并且合并重复的行)(5)去重(统计连续重复的行的次数,并且合并重复的行)文件合并,按照字段来进行文件的合并,左右合并。原创 2023-06-02 18:16:48 · 1411 阅读 · 0 评论