首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Shell脚本(for、while和case语句的应用示例)

一、for循环语句 1、根据姓名列表批量添加用户 步骤:首先创建一个姓名列表 vim /root/users.txt 然后创建脚本vim uaddfor.sh批量添加用户 授权并执行后查看用户是否已创建...2、根据ip地址列表检查主机状态 步骤:首先创建一个ip地址列表文件 vim /root/padds.txt 然后创建脚本vim chkhosts.sh 授权并执行 二、while循环语句 1、批量添加规律编号的用户...步骤:创建vim uaddwhile.sh脚本 授权并执行后查看用户是否已创建 2、猜价格游戏 步骤:创建脚本vim pricegame.sh 授权并执行 三、case分支语句 1、检查用户输入的字符类型...(2)将网段地址(如192.168.4.)赋值给变量NADD,作为检测地址的前缀。 (3)使用while循环语句,重复检测目标并记录MAC地址,主机地址从1-254。...(2)通过awk命令过滤出/etc/ethers文件中的所有IP地址,赋值给变量TARGET。 (3)使用for循环语句,读取TARGET变量中的IP地址,重复探测FTP开启情况。

2.6K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    sql语句中的left join,right join,inner join的区别

    left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录 inner join(等值连接...join sql语句如下: select * from A left join B on A.aID = B.bID 结果如下: aID     aNum     bID     bName...5 行) 结果说明: left join是以A表的记录为基础的,A可以看成左表,B可以看成右表,left join是以左表为准的....B表记录不足的地方均为NULL. -------------------------------------------- 2.right join sql语句如下: select * from...5 行) 结果说明: 仔细观察一下,就会发现,和left join的结果刚好相反,这次是以右表(B)为基础的,A表不足的地方用NULL填充. --------------------------

    1.3K60

    Mysql的 If和 Case语句

    if语句 在查询中使用if,语法如下: if('表达式','真值','假值'). 比如在数据中库存储的性别字段为1或者0,查询时想获取男,女....case语句 当两种选择是可以使用if,有多种选择的时候就需要case语句了....比如在上例子中,我们存储了一些不希望暴露性别的用户,存储的值为3.此时想要查询可以: select s.name '姓名', case s.sex when 1 then '男'...mysql的”\G”使用 在查询某个特别多字段的表的时候,输出的结果我们很难看明白,很想让字段名 和值一一对应来方便阅读,这时可以在语句末尾加上\G即可. 效果图: ?...联系邮箱:huyanshi2580@gmail.com 更多学习笔记见个人博客——>呼延十 var gitment = new Gitment({ id: 'Mysql的 If和 Case语句',

    3.7K10

    mysql查询语句left join和right join问题(日常工作遇到问题总结-仅供个人学习)

    一、需求:只需要找出6条数据 错误: 1、--  语句1、显示1101条数据  SELECT a.* FROM td_neo_crm_order_pay_detail AS a LEFT JOIN  ...JOIN  左表满,右表不存在数据时,也会显示左边的数据;当右表不存在时,条件在前面也无法限制住b.currency_code = a.currency_code 错误2、--  语句2、显示1101...JOIN  左表满,右表不存在数据时,也会显示左边的数据 正确1、--  语句1、显示6条数据-正确-b.currency_code = a.currency_code放到后面  SELECT a...此时b.currency_code为null,所以限制住了 正确2、--  语句2、显示6条数据-正确--去掉b.currency_code = a.currency_code,改为  RIGHT JOIN...JOIN 右表满,左边数据被限制在右表范围,满足需求 正确3、--  语句5、显示6条数据-正确--使用RIGHT JOIN  并且AND b.currency_code = a.currency_code

    1.2K20

    数据库中的左连接(left join)和右连接(right join)区别

    Left Join / Right Join /inner join相关 关于左连接和右连接总结性的一句话: 左连接where只影向右表,右连接where只影响左表。...Left Join select * from tbl1 Left Join tbl2 where tbl1.ID = tbl2.ID 左连接后的检索结果是显示tbl1的所有数据和tbl2中满足where...简言之 Left Join影响到的是右边的表 Right Join select * from tbl1 Right Join tbl2 where tbl1.ID = tbl2.ID 检索结果是tbl2...a> inner join:理解为“有效连接”,两张表中都有的数据才会显示left join:理解为“有左显示”,比如on a.field=b.field,则显示a表中存在的全部数据及a\\b中都有的数据...显示 c> full join:理解为“全连接”,两张表中所有数据都显示,实际就是inner +(left-inner)+(right-inner) 3 .join可以分主次表 外联接有三种类型:完全外联

    1.1K20

    数据库中的左连接(left join)和右连接(right join)区别

    Left Join / Right Join /inner join相关 关于左连接和右连接总结性的一句话: 左连接where只影向右表,右连接where只影响左表。...Left Join select * from tbl1 Left Join tbl2 where tbl1.ID = tbl2.ID 左连接后的检索结果是显示tbl1的所有数据和tbl2中满足...简言之 Left Join影响到的是右边的表 Right Join select * from tbl1 Right Join tbl2 where tbl1.ID = tbl2.ID...a> inner join:理解为“有效连接”,两张表中都有的数据才会显示left join:理解为“有左显示”,比如on a.field=b.field,则显示a表中存在的全部数据及a\\b中都有的数据...null显示 c> full join:理解为“全连接”,两张表中所有数据都显示,实际就是inner +(left-inner)+(right-inner) 3 .join可以分主次表 外联接有三种类型

    1.6K80

    数据库中的左连接(left join)和右连接(right join)区别

    Left Join / Right Join /inner join相关 关于左连接和右连接总结性的一句话: 左连接where只影向右表,右连接where只影响左表。...Left Join select * from tbl1 Left Join tbl2 where tbl1.ID = tbl2.ID 左连接后的检索结果是显示tbl1的所有数据和tbl2中满足where...简言之 Left Join影响到的是右边的表 Right Join select * from tbl1 Right Join tbl2 where tbl1.ID = tbl2.ID 检索结果是tbl2...a> inner join:理解为“有效连接”,两张表中都有的数据才会显示left join:理解为“有左显示”,比如on a.field=b.field,则显示a表中存在的全部数据及a\\b中都有的数据...显示 c> full join:理解为“全连接”,两张表中所有数据都显示,实际就是inner +(left-inner)+(right-inner) 3 .join可以分主次表 外联接有三种类型:完全外联

    2K60

    SQL学习笔记之SQL中INNER、LEFT、RIGHT JOIN的区别和用法详解

    0x00 建表准备 相信很多人在刚开始使用数据库的INNER JOIN、LEFT JOIN和RIGHT JOIN时,都不太能明确区分和正确使用这三种JOIN操作,本文通过一个简单的例子通俗易懂的讲解这三者的区别...首先,我们创建示例数据库和表。同时也要明确一个概念:A INNER/LEFT/RIGHT JOIN B操作中,A表被称为左表,B表被称为右表。...示例信息已经创建完毕,那么我们来看看具体的操作有什么区别。 0x01 INNER JOIN操作 首先,我们看看INNER JOIN操作,我们写个SQL语句,查询学生表中哪些学生受过处分: ?...分析一下上面SQL语句的执行结果,我们的查询条件是“STU.STUDENT_ID=P.STUDENT_ID”,即学生表和处分表都有的STUDENT_ID的结果集,很明显,2014000002、2014000006...0x03 RIGHT JOIN操作 分析过LEFT JOIN了,RIGHT JOIN相信你也已经明白了,“A LEFT JOIN B ON ……”是将符合ON条件的B表搜索结果合并到A表中,作为一个结果集输出

    1.4K20

    shell脚本中的case条件语句介绍和使用案例

    #前言:这篇我们接着写shell的另外一个条件语句case,上篇讲解了if条件语句。...case条件语句我们常用于实现系统服务启动脚本等场景,case条件语句也相当于if条件语句多分支结构,多个选择,case看起来更规范和易读 #case条件语句的语法格式 case "变量" in...,然后使用case条件语句进行判断,根据用户输入的值执行相关的操作 #执行效果 [root@shell scripts]# sh num.sh please input a number:1 The...,然后使用case条件语句进行判断,根据用户输入的值执行相关的操作,给用户输入的水果添加颜色 #扩展:输出菜单的另外种方式 cat<<-EOF =============================...、比较,应用比较广,case条件语句主要是写服务的启动脚本,各有各的优势。

    6.8K31

    适配器模式的理解和示例

    角色 目标接口:Target,该角色把其他类转换为我们期望的接口 被适配者: Adaptee 原有的接口,也是希望被改变的接口 适配器: Adapter, 将被适配者和目标接口组合到一起的类 4....,而我们只需要其中一部分,这是看可以用抽象类来实现该接口,不需要的方法只需要写个空方法(默认实现)就好了,接口目标类去实现自己需要的接口 适用的场景是不想实现原有类的所有方法 二、示例 背景:买了一个进口笔记本电脑...冲突:笔记本电脑需要的三项电源,和只提供的二项电源冲突 解决方案:设置一个适配器二项充电口转化为三项充电口 2.1.1 Adaptee 原有的类 提供二项电 /** * 插头 二项供电 Adaptee...三、总结 适配器好处 重用 复用的现存的类, 解决了现存类和复用环境要不一致的问题 低耦合 无需修改原有代码(遵循开闭原则) 这里说些缺点吧,过多的使用适配器,的确会让程序看起来很难懂,我的理解是,...在适配别人接口和其他API接口时,适配器的用处就来了 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/154664.html原文链接:https://javaforall.cn

    55510

    Golang的反射reflect深入理解和示例

    也就是说,这类应用通过采用某种机制来实现对自己行为的描述(self-representation)和监测(examination),并能根据自身行为的状态和结果,调整或修改应用所描述行为的状态和相关的语义...interface 和 反射 在讲反射之前,先来看看Golang关于类型设计的一些原则 变量包括(type, value)两部分 理解这一点就知道为什么nil !...interface及其pair的存在,是Golang中实现反射的前提,理解了pair,就更容易理解反射。...小结 Golang reflect慢主要有两个原因 涉及到内存分配以及后续的GC; reflect实现里面有大量的枚举,也就是for循环,比如类型之类的。...总结 上述详细说明了Golang的反射reflect的各种功能和用法,都附带有相应的示例,相信能够在工程应用中进行相应实践,总结一下就是: 反射可以大大提高程序的灵活性,使得interface{}有更大的发挥余地

    1.1K60

    Golang的反射reflect深入理解和示例

    我的《Golang的反射reflect深入理解和示例》原文链接 Golang的反射reflect深入理解和示例编程语言中反射的概念在计算机科学领域,反射是指一类应用,它们能够自描述和自控制。...interface及其pair的存在,是Golang中实现反射的前提,理解了pair,就更容易理解反射。...fieldValue 类型是 reflect.Value,它是一个具体的值,而不是一个可复用的反射对象了,每次反射都需要malloc这个reflect.Value结构体,并且还涉及到GC。...小结Golang reflect 慢主要有两个原因涉及到内存分配以及后续的GC;reflect实现里面有大量的枚举,也就是for循环,比如类型之类的。...总结上述详细说明了Golang的反射reflect的各种功能和用法,都附带有相应的示例,相信能够在工程应用中进行相应实践,总结一下就是:反射可以大大提高程序的灵活性,使得interface{}有更大的发挥余地反射必须结合

    60522

    文心一言 VS 讯飞星火 VS chatgpt (186)-- 算法导论14.1 3题

    select语句会阻塞当前goroutine,直到其中一个case可以执行,然后执行该case。如果没有任何case可以执行,且没有default分支,select将阻塞直到有case可以执行。...下面是一个select语句的非递归版本的示例代码,这个例子中我们有两个通道操作,且没有default分支: package main import ( "fmt" "time" ) func...请注意,这个代码示例是同步的,即主goroutine会阻塞等待数据。如果你需要一个非阻塞的版本,可以在select语句中使用default分支来处理没有数据的情况。...非递归版本的实现通常涉及栈来模拟递归过程。...在 main 函数中,我们创建了一个红黑树的示例,并调用 osSelect 函数查找值为 15 的结点。如果找到了结点,我们打印结点的值和颜色;否则,打印未找到结点的消息。

    14920

    深入了解 Golang 条件语句:if、else、else if 和嵌套 if 的实用示例

    fmt.Println("x 大于 y") } } 示例解释 在上面的示例中,我们使用了两个变量x和y,测试x是否大于y(使用>运算符)。...语法 if 条件 { // 如果条件为真,则执行的代码 } else { // 如果条件为假,则执行的代码 } 使用if else语句的示例: 示例 在此示例中,时间(20)大于18,因此if条件为假...} } 示例 在此示例中,温度为14,因此if的条件为假,因此执行else语句中的代码行: package main import ("fmt") func main() { 温度 := 14...接下来,在 else if 语句中的下一个条件也为假,因此我们转向 else 条件,因为条件1和条件2都为假,所以输出屏幕上显示 "晚上好"。 但是,如果时间为14,我们的程序将打印 "白天好"。...} else { fmt.Println("a 和 b 相等。") } } 结果: a 和 b 相等。 注意: 如果条件1和条件2都为真,则仅执行条件1的代码。

    2.3K00

    【硬刚大数据】从零到大数据专家面试篇之SparkSQL篇

    ,这里仅以示例的程序中涉及到的源码中的class、object和方法,绘制成xmind图如下,想细心研究的可以参考该图到spark源码中进行分析。...方法中的处理逻辑,同时需要修改其他涉及的代码。...由于涉及需要改写的代码比较多,可以封装成工具 8.说说你对Spark SQL 小文件问题处理的理解 在生产中,无论是通过SQL语句或者Scala/Java等代码的方式使用Spark SQL处理数据,在Spark...再来看一下该join语句的逻辑计划和物理计划: 可以看出,因为该join语句中没有指定on连接查询条件,导致了CartesianProduct即笛卡尔积。...(left), planLater(right), buildSide, joinType, condition) :: Nil case j @ logical.Join(left, right, joinType

    2.5K30

    数据科学面试中你应该知道的十个SQL概念

    CASE WHEN 许多问题都可能需要使用CASE-WHEN语句,仅仅是因为这个概念功能如此之多。 在根据其他变量分配某个值或类时,用CASE-WHEN可以编写复杂的条件语句。...鲜为人知的是,用它还可以透视数据。例如,如果你已有“月(month)”列,又希望为每个month创建一个单独的列,则可以使用CASE WHEN语句来透视数据。...聚合函数 聚合函数跟第二个概念相关,因此你需要对这类函数的功能有深刻理解,比如min,max,sum,count等等……这也意味着你应该好好理解GROUP BY和HAVING子句。...字符串格式化包括以下内容: LEFT, RIGHT TRIM POSITION SUBSTR CONCAT UPPER, LOWER COALESCE 8....日期时间处理 你肯定会遇到一些涉及日期和时间数据的SQL问题。例如,你也许需要按月份对数据分组,或者将变量格式从DD-MM-YYYY转换为简单的月份。

    1.3K00
    领券