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 / 问题

问题[exit-status](unix)

Martin Hope
popcorn games
Asked: 2024-09-26 02:03:46 +0800 CST

为什么名为 sl (stream locomotive)的程序总是以退出状态“1”结束?

  • 5

为什么名为 sl (stream locomotive)的程序总是以退出状态“1”结束?

sl

动画 sl 正在运行......

$ echo $?
1

为什么退出状态不是零?

能给我解释一下吗?我正在运行它tmux。

exit-status
  • 1 个回答
  • 40 Views
Martin Hope
user388557
Asked: 2023-06-30 17:24:29 +0800 CST

取消进程的退出状态

  • 5

$?在一个项目中,我有一个测试设置,我可以在其中读取命令的退出状态。

在我的测试中,我想确保foobar输出中不存在该字符串。

当我运行命令时:

./program | grep foobar

返回1,表示失败。

我需要它返回0。

有没有办法取消返回值?

exit-status
  • 1 个回答
  • 22 Views
Martin Hope
Coder909
Asked: 2022-09-27 13:41:43 +0800 CST

unbuffer 命令内的返回值

  • 2

我有以下 bash 代码来捕获构建结果,同时将输出打印到屏幕并提供构建结果的解析。

output=$(unbuffer cmake ... | tee /dev/tty)
parseErrors ${output}

parseErrors 听起来像。它解析任何看起来像错误的输出。我可以在那里退出,但宁愿在函数调用之后退出。如何从传递给 unbuffer 命令的 cmake 构建中获取返回状态?我曾尝试使用 PIPESTATUS[0],但我认为这是从 unbuffer 本身返回值。

bash exit-status
  • 1 个回答
  • 37 Views
Martin Hope
Rotesass
Asked: 2022-04-05 15:06:38 +0800 CST

Systemctl 服务失败退出代码

  • 0

我的 systemctl 代码不起作用

● <appname>.service
   Loaded: loaded (/etc/systemd/system/<appname>.service; disabled; vendor prese
   Active: failed (Result: exit-code) since Mon 2022-04-04 21:55:20 CEST; 4s ago
  Process: 1686 ExecStart=/usr/bin/npm start (code=exited, status=203/EXEC)
 Main PID: 1686 (code=exited, status=203/EXEC)

Apr 04 21:55:20 raspberrypi systemd[1]: <appname>.service: Service RestartSec=50
Apr 04 21:55:20 raspberrypi systemd[1]: <appname>.service: Scheduled restart job
Apr 04 21:55:20 raspberrypi systemd[1]: Stopped <appname>.service.
Apr 04 21:55:20 raspberrypi systemd[1]: <appname>.service: Start request repeate
Apr 04 21:55:20 raspberrypi systemd[1]: <appname>.service: Failed with result 'e
Apr 04 21:55:20 raspberrypi systemd[1]: Failed to start <Appname>.service.


systemctl reset-failed <appname>
systemctl start <appname>

^^不要工作

任何人都可以帮忙吗?

systemd exit-status
  • 1 个回答
  • 5318 Views
Martin Hope
pmor
Asked: 2022-02-16 09:21:21 +0800 CST

grep:如果输入文件也是输出,那为什么要清除输入文件?[复制]

  • 0
这个问题在这里已经有了答案:
将管道弯曲回其原点 7 个答案
我可以在 Linux 中读取和写入同一个文件而不覆盖它吗?[重复] (2个答案)
8 个月前关闭。

设想:

$ cat t0.txt
xxx

$ grep xxx t0.txt > t0.txt
grep: t0.txt: input file is also the output

# exit status 2

$ cat t0.txt
<nothing>

问题:如果输入文件也是输出并且存在状态是2(发生错误),那么为什么要清除输入文件?

grep exit-status
  • 1 个回答
  • 100 Views
Martin Hope
A. Que
Asked: 2022-02-08 09:39:44 +0800 CST

Bash 命名管道、并行命令和退出状态

  • 2

我正在尝试使用命名管道,以便我可以保留stdout长时间过程的状态输出。我可以stderr用于状态输出,但我想保留它以防出错。这是一个例子:

#!/bin/bash
pipe=$(mktemp -u)
mkfifo $pipe

dd if=/dev/zero of=$pipe bs=1M count=1024 status=progress & cat $pipe > test.bin

# ¿¿¿ Status of dd command ???

rm $pipe

该命令并不完全是我想要做的,但说明了使用命名管道将一个进程的输出馈送到另一个进程的输入的组合。在我的应用程序中,dd替换为一些长时间运行的命令,并cat替换为ssh. 这会做我想要的,但我不知道如何获取dd命令的状态,因为它$?会返回命令的状态cat。如果这是一个管道,我可以使用PIPESTATUS,但这似乎不适用于并行进程。在实际应用中,任何一个(或两个)命令都可能失败。

有没有办法让进程的状态并行运行?有没有比命名管道更好的方法来完成这个任务?

bash exit-status
  • 1 个回答
  • 409 Views
Martin Hope
Alex Swift
Asked: 2021-12-22 20:52:15 +0800 CST

为什么 Unix 命令在 Shell 中以非零值退出并在 bash if 条件下使用时评估为 True?

  • 0

该命令patch -R -p0 -s -f --dry-run < abc.patch失败,退出代码为 1,并从 patch 命令打印一条错误消息,但在 if 条件下与否定一起使用时,它通过(即打印 Pass),下面是代码

if ! patch -R -p0 -s -f --dry-run < abc.patch; then
         echo "Pass"
fi

我试过什么?我重定向了字符串 dev/null 结果没有变化

请帮助我了解这里出了什么问题?

shell exit-status
  • 2 个回答
  • 772 Views
Martin Hope
x-yuri
Asked: 2021-10-21 06:24:07 +0800 CST

什么时候inherit_errexit 不起作用?

  • 3
#!/usr/bin/env bash
set -e
shopt -s inherit_errexit
a=$(cat no-such-file)
echo survived
$ /tmp/a.sh
cat: no-such-file: No such file or directory
#!/usr/bin/env bash
set -e
shopt -s inherit_errexit
echo -n $(cat no-such-file)
echo survived
$ /tmp/a.sh
cat: no-such-file: No such file or directory
survived
#!/usr/bin/env bash
set -e
shopt -s inherit_errexit
f() { :; }
f $(cat no-such-file)
echo survived
$ /tmp/a.sh
cat: no-such-file: No such file or directory
survived

还有其他情况吗?还是某种概括?

bash exit-status
  • 1 个回答
  • 479 Views
Martin Hope
yellowhat
Asked: 2021-10-13 07:36:20 +0800 CST

pdsh 和命令退出代码

  • 3

我想pdsh用来断言命令在多个节点上成功运行,如果命令在任何节点上失败,则退出代码(from pdsh)应该是非零的。

考虑以下示例:

$ pdsh -w host1,host2 "exit 0"; echo $?
host1: host1
host2: host2
0
$ pdsh -w host1,host2 "exit 1"; echo $?
host1: host1: ssh exited with exit code 1
host2: host2: ssh exited with exit code 1
0
$ pdsh -w host1,host2,host3 "exit 1"; echo $?
host1: host1: ssh exited with exit code 1
host2: host2: ssh exited with exit code 1
host3: host3: ssh exited with exit code 255
0

第二个示例应返回非零退出代码。

在第三个示例host3中不存在并且退出代码仍然为零。

我错过了什么吗?

谢谢

exit-status pdsh
  • 1 个回答
  • 571 Views
Martin Hope
Alexander Blazhkov
Asked: 2021-10-05 08:43:51 +0800 CST

当计算结果等于 0 时,为什么 'let' 以代码 1 退出?

  • 7

我遇到了这个问题,其作者处理了由以下原因引起的问题: let x=1-1以代码 1 退出。

根据bash手册:

如果最后一个表达式的计算结果为 0,则 let 返回 1;否则返回 0。(第 56-57 页)

我对 bash 的细微差别不太熟悉,所以我的问题是“这种行为的原因是什么?”。可能是因为 0 解释为“假”?对于像我这样的 bash 初学者来说,算术表达式的结果为 0 会导致错误退出代码,这有点奇怪......

bash exit-status
  • 1 个回答
  • 743 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