Terminal 尝试将echo的输出传递到mkdir命令

Terminal 尝试将echo的输出传递到mkdir命令,terminal,echo,pipeline,mkdir,Terminal,Echo,Pipeline,Mkdir,我知道echo命令打印它的所有参数,而不从stdin读取 但是,当我试图生成echo NAME | mkdir时,它告诉我:mkdir:缺少操作数 我试图从man mkdir中读取,但它没有告诉我mkdir从何处读取。如果要将名称作为输入传递,mkdir需要一个参数 尝试: 这里的xargs正好提供了缺少的链接:它接受输入流,并将其作为参数传递给程序(在本例中为mkdir)。 请注意,这会将空格分隔的元素解析为不同的参数,因此请谨慎使用 有关更多信息,请查看manxargsmkdir不从任何地方

我知道
echo
命令打印它的所有参数,而不从stdin读取

但是,当我试图生成
echo NAME | mkdir
时,它告诉我:
mkdir:缺少操作数


我试图从
man mkdir
中读取,但它没有告诉我mkdir从何处读取。

如果要将名称作为输入传递,mkdir需要一个参数

尝试:

这里的xargs正好提供了缺少的链接:它接受输入流,并将其作为参数传递给程序(在本例中为mkdir)。 请注意,这会将空格分隔的元素解析为不同的参数,因此请谨慎使用


有关更多信息,请查看
manxargs
mkdir
不从任何地方读取;它需要参数,例如

mkdir NAME

哦,酷,它起作用了。“你能解释一下为什么和什么是xargs吗?”FineasSilaghi编辑了我的答案。我认为xargs是大多数人在linux中从未听说过的最有用的工具之一
mkdir NAME