linux - UNIX shell 脚本,用于从文件运行 grep 命令列表并在单个分隔文件中获取结果

标签 linux bash unix grep

我是 unix 编程的初学者,并且是一种自动化工作的方法
我想运行一个 list a grep 命令,并在单个分隔文件中获取所有 grep 命令的输出。

我正在使用以下 bash 脚本。但它不起作用。

样机sh文件:

!/bin/sh
grep -l abcd123
grep -l abcd124
grep -l abcd125

在运行时我使用了以下命令

$ ./Mockup.sh > output.txt

这是正确的命令吗?

如何在输出文件中同时获得 grep 命令和输出?

如何在每个命令和结果后分隔输出?

最佳答案

How can I get both the grep command and output in the output file

您可以使用 bash -v(详细)在 stderr在执行前打印每个命令,它的输出将像往常一样可用在 stdout 上:

bash -v ./Mockup.sh > output.txt 2>&1

cat output.txt

Working Demo

关于linux - UNIX shell 脚本,用于从文件运行 grep 命令列表并在单个分隔文件中获取结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26757667/

相关文章:

linux - 如何在 bash 中精确打印一些文本

bash - Base64 逐行编码更快的方式

bash - 列出所有不包含子目录的目录

java - 在后台执行命令行 Java 程序

linux - 使用脚本获取数据并显示一半

bash - VIM: chmod 命令不是编辑器命令

java - 如何从 Unix 纪元时间毫秒获取 GMT 日期?

java - 如何确定在 Linux 上使用 Java 还是 JRuby 是否正在运行不同的进程 ID?

c - 在 Linux 上可选地使用 CUDA

linux - 保护在 apache 服务器上运行的每个站点的源代码