我知道echo
命令打印所有它的参数,而不是从stdin读取。
但是当我尝试制作echo NAME | mkdir
时,它告诉我:mkdir: missing operand
。
我试图从man mkdir
读取,但它没有告诉我mkdir从哪里读取。
答案 0 :(得分:4)
你传递名字作为输入,mkdir期待一个参数
尝试:
echo NAME | xargs mkdir
这里的xargs提供了完整的缺失链接:它接受输入流,并将其作为参数传递给程序(在本例中为mkdir)。 请注意,这会将以空格分隔的元素解析为不同的args,因此请谨慎使用。
有关详细信息,请查看man xargs
答案 1 :(得分:0)
mkdir
无法从任何地方读取;它需要参数,例如
mkdir NAME