解释这个命令的作用

解释这个命令的作用

ls *.txt | lp

这个命令不是列出所有以 .txt 结尾的文件然后打印它们吗?

答案1

简单回答是不”。

lp接受文件[列表],或STDIN.所提供的命令除了启动一个空的打印作业之外什么也不做:

$ ls *.txt|lp
request id is queue-153 (0 file(s))

目前尚不清楚你想要什么。如果你想打印与 glob 匹配的文件列表*.txt,那么你需要告诉lp使用STDIN

$ ls *.txt|lp -

如果您想打印内容与 glob 匹配的文件的数量*.txt,那么您只需将 glob 本身传递给lp

$ lp *.txt

答案2

lp命令要求将文件作为命令行参数给出,而不是通过标准输入给出。

如果您尝试打印文件(而不是打印文件名列表),ls则完全不需要:

lp *.txt

相关内容