我正在尝试将命令输出重定向到变量:
OUTPUT=$(sudo apache2ctl configtest)
然后阅读:
echo $OUTPUT
运行它时,输出如下:
19:19:12 user@user ~ OUTPUT=$(sudo apache2ctl configtest)
Syntax OK
Syntax OK
但是变量保持空白。对于其他命令,我已经尝试过相同的方法,并且一切正常。
OUTPUT=$(ls -l)
这会将文件列表写入变量,OUTPUT
以便以后可以读取。我应该怎么做才能使其正常工作?
也许输出去了stderr
,不是stdout
吗?
尝试这个: OUTPUT=$(sudo apache2ctl configtest 2>&1)
问题内容: 我必须找到具有选定权限的文件,并列出它们及其编号。因此,我想将命令的结果传递给shell和下一个命令,该输出我想存储在变量中,以便以后可以很好地显示。我想吃点东西 但部分无效。请帮忙。 编辑 我知道我可以将命令的整个输出放到像这样的变量中 但是然后我只需要的结果。我如何从该变量中获得该数字?是否可以按相反的顺序显示它,先显示编号,然后显示列表? 问题答案: 复制到TTY(不是标准输出!
我想为我的服务器做一些简单的日志记录,它是一个运行在Docker容器中的小Flask应用程序。 这是Dockerfile 正如您在最后一行中看到的,我将stderr和stdout重定向到一个文件。现在我运行这个容器并将外壳放入其中 并观察以下事情: 服务器正在运行,网站正在运行 没有 产生: 但是没有日志...然而,如果我到容器,我可以看到应用程序在控制台中生成输出。 使用Docker时如何正确重
问题内容: 我想为服务器做一些简单的日志记录,这是一个在Docker容器中运行的小型Flask应用程序。 这是Dockerfile 正如您在最后一行看到的那样,我将stderr和stdout重定向到文件。现在我运行这个容器并将其装入其中 并注意以下几点: 服务器正在运行,网站正在运行 没有 产量: 但是没有日志…但是,如果我进入容器,则可以在控制台中看到该应用程序正在生成输出。 使用Docker时
问题内容: 我希望能够在后续命令中使用最后执行的命令的结果。例如, 现在假设我希望能够在编辑器中打开文件,删除文件或对其进行其他操作,例如 我该怎么做?也许使用一些bash变量? 更新: 为了澄清,我不想手动分配东西。我需要的是内置的bash变量,例如 保留上一个命令的最后一个参数。我想要类似的东西,但使用最后一条命令的输出。 最终更新: 塞思的答案非常有效。请记住以下几点: 初次尝试时不要忘记
问题内容: 我在Linux上使用bash shell。我有这个简单的脚本…… 但是,当我运行此脚本时 打印所有输出而没有回车/换行。不知道这是我将输出存储到$ TEMP还是echo命令本身的方式。 如何将命令的输出存储到变量并保留换行符/回车符? 问题答案: 引用 您的变量。原因如下: 不带引号的外壳将替换为其包含的字符(其中之一是换行符)。然后,在调用shell 之前,先使用(IFS)将该字符串
问题内容: 关于在Linux上计时程序的一个小问题:time命令允许测量程序的执行时间: 哪个工作正常。但是,如果我尝试将输出重定向到文件,它将失败。 我知道还有其他一些带有选项-o的时间实现,但是我的问题是关于没有那些选项的命令。 有什么建议么 ? 问题答案: 尝试 将“时间”的STDERR和您的命令组合到time.txt中 或使用 将来自“睡眠”的STDERR放入文件“ sleep.stder