zoukankan      html  css  js  c++  java
  • Linux命令之yes

    在删除文件或进行一些乱七八糟的危险操作时总需要用户手动输入一个"y"来确定一下,但是如果数量很多的话手动输入就是个灾难啊,yes最初就是为了解决这个问题产生的,比如这种形式:

    yes | rm a*

    当然我们可以指定-f静默选项不进行确认询问,呃,就当我举了个不太恰当的例子吧,毕竟我删除文件从来都是-f选项,而借助yes的话太麻烦了。

    不过它的另一个用法可能大多数人都不知道,就是可以指定一行字符串然后不断将这行字符串送到标准输出,实际上yes本来的作用就是接收一行字符串然后不断将它输出,如果未指定的话默认就是y,这个是写在手册里的:

    Repeatedly output a line with all specified STRING(s), or 'y'.

    所以没事啃下手册还是有些用处的,这个特性可以将yes当做“crazy-repeat”使用(我瞎取的名字,不过还挺形象的),即将一行字符串不断的重复输出到标准输出:

    yes "foobar"

    在某些情况下可以用来模拟数据产生的过程,比如模拟日志疯狂产生的过程:

    yes "[2018-08-08 18:30:17] Thread-10 : foo bar"

    总结:

    1. yes用来将指定字符串不断送到标准输出,如果未指定字符串的话默认就是y,如果进程不被杀掉会一直发送直到天荒地老。

    2. 在某些情况下可以用来模拟不断产生的数据,优点是实现简单,缺点是每行数据都是一样的不会变,不如写个脚本模拟。

    最后附上文档man yes:

    YES(1)                                                            User Commands                                                           YES(1)
    
    NAME
           yes - output a string repeatedly until killed
    
    SYNOPSIS
           yes [STRING]...
           yes OPTION
    
    DESCRIPTION
           Repeatedly output a line with all specified STRING(s), or 'y'.
    
           --help display this help and exit
    
           --version
                  output version information and exit
    
           GNU coreutils online help: <http://www.gnu.org/software/coreutils/> Report yes translation bugs to <http://translationproject.org/team/>
    
    AUTHOR
           Written by David MacKenzie.
    
    COPYRIGHT
           Copyright © 2013 Free Software Foundation, Inc.  License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
           This is free software: you are free to change and redistribute it.  There is NO WARRANTY, to the extent permitted by law.
    
    SEE ALSO
           The  full documentation for yes is maintained as a Texinfo manual.  If the info and yes programs are properly installed at your site, the
           command
    
                  info coreutils 'yes invocation'
    
           should give you access to the complete manual.
    
    GNU coreutils 8.22                                                 April 2018                                                             YES(1)
    

    .

  • 相关阅读:
    关于aspx消除源代码的第一行空行(一步搞定!!!)
    考虑
    一段时间没来园子了
    随便写写
    自考群网站功能说明
    打开一个别人的代码遇到的问题
    i7 4790 z97ar ssd 固态硬盘 装机的一些经历
    我编程遇到的问题,解决方法与大家分享
    学习,学习,还是学习
    准备考试
  • 原文地址:https://www.cnblogs.com/cc11001100/p/9539623.html
Copyright © 2011-2022 走看看