AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题

问题[output](unix)

Martin Hope
halloleo
Asked: 2022-04-05 17:13:18 +0800 CST

如何告诉“dnf 搜索”仅列出 pacakge 名称(或名称和摘要)中的匹配项,而不仅仅是摘要中的匹配项?

  • 2

在 RHEL/CentOS 上,包管理器dnf可以在包的名称和摘要中搜索字符串。我怎样才能告诉它只列出名称(或名称和摘要)中的匹配项,而不是仅列出摘要中的匹配项?

package-management output
  • 1 个回答
  • 793 Views
Martin Hope
Matheus dos Santos Bonifácio
Asked: 2022-01-19 09:32:53 +0800 CST

展开输入、输出或错误

  • 0

我想要做的是要求用户输入一行并发送到标准输出。

我尝试获取输入以执行条件问题,但无法扩展输入(在本例中是输入 0,但可以是输出 1 或错误 2)。在这种情况下,我想询问并从标准输入读取用户输入并发送到标准输入/输出,然后验证是否有某些东西(如果非零)。代码看起来像(在这种情况下可能看起来很困惑,您可以跳过并使用上面的描述)

#!/usr/bin/bash

read>&0

if [[ -n $my_input_expanded ]] ; then
  echo "hello word"
fi

这里read起到询问用户输入的作用(可以是另一个命令,但我不知道哪个可以在这里),变量 $my_input_expaded 是一些类似输入重定向的操作0>(我知道这只是文件,但是是这样的),但重定向是输入的扩展。

bash output
  • 1 个回答
  • 69 Views
Martin Hope
user494791
Asked: 2021-09-29 20:09:17 +0800 CST

有没有办法将所有 shell 脚本输出发送到终端和日志文件,*加上*用户输入的任何文本?

  • 2

我想将 shell 脚本的输出(包括用户输入的文本)发送到终端和日志文件。

我认为一些组合可能会做到这一点tee,exec但到目前为止我还没有运气。我知道tee它本身可以回显并捕获用户在终端中输入的内容:

$ tee logfile
Hello  (I entered this at runtime)
Hello  (I entered this at runtime)
^C

$ cat logfile
Hello  (I entered this at runtime)

但我需要查看(在终端和日志文件中)用户输入的内容以响应在 shell 脚本中调用的命令。

tee似乎无法始终如一地做到这一点。

例如:

$ read message 2>&1 | tee logfile
Hello  (I entered this at runtime)

$ cat logfile

那里什么也没拍到。我希望Hello (I entered this at runtime)像以前一样在文件中看到。

我还尝试在 shell 脚本中结合tee使用,如下所示:exec

$ cat test.bash
#!bin/bash
# Note: in this simplified version of this file, I’m not looking at $1, $2, or anything else passed in, but will need to eventually

rm -f logfile
exec &> >(tee -a logfile)
echo “Say \”Hello\”” 2>&1
read -p “> “ 2>&1

不幸的是,添加exec没有帮助:

$ ./test.bash
Say “Hello”
> Hello  (I entered this at runtime)

$ cat logfile
Say “Hello”
> 

如您所见,它捕获了echo命令和read命令的输出,但没有捕获我为响应read命令而输入到终端的内容。

有没有办法做到这一点?

我知道script命令(“制作终端会话的打字稿”)可以捕获屏幕上的所有内容并将其放入日志文件中。但是script无法从 shell 脚本中以有用的方式调用该命令。(它可以?)

script需要首先调用,然后用户必须调用所需的 shell 脚本。但我希望用户只需调用一个命令及其参数,然后让该命令负责运行其他所有内容并记录所有内容。

然后是脚本捕获的所有“额外”信息(例如颜色代码、退格),这使得在任意文本编辑器中读取生成的日志文件变得很困难。

我只想查看日志文件中的“人类可读”字符。而且我不想查看用户是否更正了拼写错误。我只想看到他们完成编辑并按 Enter 后屏幕上显示“Hello”。虽然我认为额外的信息可以在捕获后被剥离。

shell-script output
  • 3 个回答
  • 694 Views
Martin Hope
Minz
Asked: 2020-01-25 06:58:13 +0800 CST

轮询命令的正确输出

  • 0

对 bash 来说是全新的,因此非常感谢任何帮助。我正在寻找一个脚本来执行以下操作,它是一个非常简单的脚本,但我似乎无法得到它:

  • 我想运行一个命令,该命令将在输出中返回成功或其他字符串。
  • 如果输出不包含单词success,我希望它休眠5分钟并再次运行,直到它包含success。

它看起来像这样

until (SOMECOMMAND) &> /dev/null
do
    if(SOMECOMMAND contains successful);
    break;
    else sleep 300
done

echo -e "\nThe command was successful."
bash output
  • 2 个回答
  • 1144 Views
Martin Hope
user343330
Asked: 2019-03-25 02:13:22 +0800 CST

立即在每一行输出上运行命令[重复]

  • 0
这个问题在这里已经有了答案:
关闭管道中的缓冲 14 个答案
3年前关闭。

我发现当我运行一个命令时,该命令执行具有连续输出行的软件,例如 tcpdump 或 tshark 之类的流量监视器,该命令会不断计数屏幕上的数字,例如 4、8、12 ... 等等。

command... | awk -F ' ' '{ANY COMMAND}'

我希望我的 bash 脚本在每行输出而不是每千行之后执行操作。我怎样才能做到这一点?

运行一个产生大量输出的软件时有一个很好的例子,你可以像这样放置管道运算符:

command... | awk -F ' ' '{print $1}'

它将计算从 0 到 1000+ 的数字,然后仅打印一次所有正确信息,但不会在脚本执行时立即打印。

如果我使用以下命令将输出放入文件中:

command... > file.txt

...然后当命令提供任何输出时,数据会立即出现。我想知道使用管道操作员时导致延迟的原因是什么?

command output
  • 1 个回答
  • 245 Views
Martin Hope
user8314628
Asked: 2019-03-01 21:37:48 +0800 CST

如何知道 ls -l 输出中每个元素的类型?

  • 1

我正在检查输出中的每个字段到底是什么ls -l。这篇文章中的例子 解决了我的问题。但我又想知道每个字段的类型是什么。弦很明显。但是数字呢?比如10,2048它们是整数还是字符串?有什么办法可以检查每个字段的类型吗?

ls output
  • 1 个回答
  • 217 Views
Martin Hope
csadam
Asked: 2019-02-27 08:40:38 +0800 CST

使用 tar 仅显示真正提取的(未跳过的)文件

  • 1

我正在提取每日备份档案。我只想查看自最后一天以来的新文件。档案包含许多已经存在的文件,我不想覆盖这些文件,所以我使用该--skip-old-files选项,这很好。

但我只想列出那些实际提取的文件,并省略那些因为它们已经存在而被跳过的文件。

例子:

我当前的命令是:

tar --verbose --skip-old-files --extract --file=2019-02-10.tar.gz

并且输出是(其中 file1 和 file2 已经存在,而 file3 是新的):

file1.zip
tar: file1.zip: skipping existing file
file2.zip
tar: file2.zip: skipping existing file
file3.zip

我只需要输出中的 file3.zip。可能吗?

tar output
  • 1 个回答
  • 348 Views
Martin Hope
user149572
Asked: 2019-02-06 10:24:38 +0800 CST

CTRL+D 与 CTRL+C

  • 0

说CTRL+D停止输入执行而CTRL+C停止输出显示(作为纯数据,不执行)是真的吗?

keyboard-shortcuts output
  • 1 个回答
  • 3596 Views
Martin Hope
user149572
Asked: 2019-01-18 13:14:36 +0800 CST

如何将特定 MediaWiki 安装的版本打印到终端

  • 0

我有一个 LAMP 环境,/var/www/html/x它是一个 MediaWiki 网站。我还有几个 MediaWiki 网站,但我想将其版本打印x到终端。

我需要这样做,以便在手动更新 MediaWiki 之前知道最新版本是什么。

在该目录中,有一个以RELEASE-NOTES-1.32文本命名的文件:

== MediaWiki 1.32 ==

=== 自 MediaWiki 1.32.0-rc.2 以来的变化 ===

MORE_TEXT…………

也许我应该只打印第 3 行,awk 'NR>3' /var/www/html/x/RELEASE-NOTES-*但也许有更好的方法来了解给定 MediaWiki 安装的完整版本。

进行此输出的最佳,最稳定的方法是什么?

awk output
  • 1 个回答
  • 96 Views
Martin Hope
Emanuil Rusev
Asked: 2018-12-17 12:15:59 +0800 CST

减少“dirs -v”输出中数字和路径之间的空间

  • 0

我觉得数字和路径之间的空间太大了,我相信更少的空间会让线条更容易跟随。

有没有一种简单的方法可以减少这个空间?

在此处输入图像描述

zsh output
  • 2 个回答
  • 66 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve