• linux 的空命令:(冒号)


    php里面又“空操作”这个东西,于是想一想linux的命令中是否有“空命令”这种东西,搜索一下,结果发现真的有这个东西存在 -------:)

    冒号 : 就是空命令。即什么也不做,是一个命令占位符

    #!/bin/bash
    # 1、ping -c1 -w1 中-c1是指ping的次数,-w是指执行的最后期限,也就是执行的时间,单位为秒
    # 2、&>/dev/null 是指标准输出和错误输出都输出到/dev/null上,而不在界面上显示;
    # 后面的&&和|| 是与和或得意思,如a&&b||c ,表示a为真,则执行b;否则执行c
    for I in `seq 1 254`; do
        ping  -c1 -w1 192.168.0.$I &>/dev/null && echo "192.168.0.$I is up" ||        echo "192.168.0.$I is down"
    done
    

      进一步问题,如果某个ip ping不通的话,不需要打印出“192.168.0.* down”这个消息,我只想打印出 “up”的消息,于是后面这个命令就可以用“:” 这个空命令代替就可以。

    #!/bin/bash
    # 1、ping -c1 -w1 中-c1是指ping的次数,-w是指执行的最后期限,也就是执行的时间,单位为秒
    # 2、&>/dev/null 是指标准输出和错误输出都输出到/dev/null上,而不在界面上显示;
    # 后面的&&和|| 是与和或得意思,如a&&b||c ,表示a为真,则执行b;否则执行c
    
    for I in `seq 1 254`; do
        ping  -c1 -w1 192.168.123.$I &>/dev/null && echo "192.168.123.$I is up" ||        :
    done
    

      

    ------------------------------------------------------------------------------------------------------

    途说明

    我们知道,在Linux系统中,冒号(:)常用来做路径的分隔符(PATH),数据字段的分隔符(/etc/passwd)等。其实,冒号(:)在Bash中也是一个内建命令,它啥也不做,是个空命令、只起到占一个位置的作用,但有时候确实需要它。当然,它也有它的用途的,否则没必要存在。在·Linux的帮助页中说它除了参数扩展和重定向之外不产生任何作用。

    man : 写道

    : [arguments]

       No effect; the command does nothing beyond expanding arguments and performingany specified redirections. A zero exit code is returned.

    常用参数

    格式::

    ·啥也不做,只起到占位符的作用。比如在编写脚本的过程中,某些语法结构需要多个部分组成,但开始阶段并没有想好或完成相应的代码,这时就可以用:来做占位符,否则执行时就会报错。

  • 相关阅读:
    面试题汇总
    Chromium中多线程及并发技术要点(C/C++)
    关于《Swift开发指南》背后的那些事
    HDU 3080 The plan of city rebuild(除点最小生成树)
    2.1.3策略模式(5.9)
    Shell脚本之监视指定进程的执行状态
    敏捷开发中的10大错误认识
    mysql插入中文数据报错:incorrect string value
    JapserReport导出PDF Could not load the following font错误
    冒泡排序
  • 原文地址:https://www.cnblogs.com/oxspirt/p/9803819.html
Copyright © 2020-2023  润新知