linux - 通过管道输入命令

标签 linux bash pipe

有办法通过管道输入命令吗?

例如:

在一个文件夹中我有 2 个文件:

  1. 文件名
  2. 文件1

文件名包含:

file1

文件1包含:

11
22
33
44
11

当我运行命令时(在包含 filesname 和 file1 的同一文件夹中):

ls -l | grep 11

或者命令:

cat filesname | grep 11

它不会返回:

11
11

最佳答案

您的 grep 11 命令将过滤您传递给它的所有行,并仅显示包含 11 的行。如果您在没有 grep 11 部分的情况下运行相同的命令,您将看到不存在任何包含 11 的命令,因此行为是正确的。

另一方面,执行cat filesname | grep 11 是浪费时间。 grep 可以接受文件作为参数,因此您可以直接执行 grep 11 filesname

关于linux - 通过管道输入命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51922931/

相关文章:

Java InetAddress.getByName &/etc/主机

linux - AWK/SED 附加到日志文件

bash - 如何使用 sed/awk 替换以逗号分隔的字符串中的第 n 列/字段?

c - 使用管道、tee() 和 splice() 将数据发送到多个套接字

python - 如何在Windows/Linux上修改或提取多个文件/文件夹名称?

c - Socket select() 时间切换?

Angular 4获取管道的 react 形式输入值

c - C处理管道时悬挂外壳

C++11 具有与不同版本的 GCC 的兼容性

python - 分组和删除文件