我知道 echo
命令打印所有参数,并且它不会从stdin读取。
但是当我试图制作echo NAME | mkdir
时,它告诉我: mkdir: missing operand
。
我试图从man mkdir
阅读,但它没有告诉我Mkdir从哪里读到的。
您将名称传递为输入,mkdir期望一个参数
尝试:
echo NAME | xargs mkdir
XARGS在这里提供了丢失的链接:它采用输入流,并将其传递给程序(在这种情况下为MKDIR(,如 grainments 。请注意,这解析了白期分隔元素作为不同的args,因此请谨慎使用。
有关更多信息,请查看man xargs