Linux yes 命令

来源:互联网 发布:济南网站关键词优化 编辑:程序博客网 时间:2024/06/06 02:04

转自:http://hi.baidu.com/yanyulou/item/0fb5e79a0b1338cab7253117


用途
重复输出肯定响应。


语法
yes [ charstring ]


描述
yes 命令重复输出肯定响应。使用 yes 命令作为到在它完成指定操作前要求肯定响应的另一个命令的管道输入。例如,yes 命令在删除某个目录中的多个文件时很有用。Ctl-C 按键顺序可以终止连续的肯定响应。
 
注:当前语言环境是由 LC_MESSAGES 环境变量或 charstring 参数决定的(如果指定的话)。charstring 参数可以是任何单一的字符或字符流。如果您在发出 yes 命令后输入 charstring 参数,则直到键入 Ctl-C 按键顺序才会在屏幕上显示 charstring 参数。


示例

要将单词 first 显示到屏幕上,输入:
 
yes first
除非输入 Ctl-C 按键顺序来结束,本语句会显示单词 first。
文件
 
/usr/bin/yes 包含 yes 命令。
-------------------------------------
这个命令可以帮你自动回答命令行提示,例如,进入一个含有多个文件的目录,执行 "yes | rm -i *",所有的 rm: remove regular empty file `xxx'? 提示都会被自动回答 y。这在编写脚本程序的时候会很用处。


yasi:

例如一个目录下有文件 f1, f2, f3

在该目录下执行 rm * 会有类似这样的提示 “rm: remove regular empty file `f1'?”,并且要对每个文件手工输入“y"。当然可以 rm -rf *,但用上yes命令也可以。

yes | rm *

这里yes命令没有指定charstring参数,使用默认的”y"值,整条命令的作用是,执行 rm * 的过程中自动输入"y",完成全部文件的删除。

注:yes ye | rm * 也可以,但 yes ok | rm * 却不行,因为rm 要求的输入是"y"