导致 `less` 以非零状态代码退出?

导致 `less` 以非零状态代码退出?

我想要以下命令结构:

command && check-status | less && followup-command

这将在用户与 交互时暂停执行less。用户如何强制less以非零状态退出以防止followup-command运行?

我目前正在使用less 458 (POSIX regular expressions)

答案1

在简单的情况下,您可以要求less不处理 SIGINT,然后Control-C将其终止,退出代码将为非零。使用选项执行此操作-K

command && check-status | less -K && followup-command

作为旧版本 less 的解决方法,您可以执行类似的操作

command && bash -c 'trap "exit 1" int;check-status | less -K;' && followup-command

如果没有-K,请忽略它,但您必须发出信号,然后也键入 quit。

相关内容