相关疑难解决方法(0)

欺骗应用程序认为它的标准输出是一个终端,而不是管道

我正试图做相反的事情

检测stdin是终端还是管道?

我正在运行一个正在更改其输出格式的应用程序,因为它检测到stdout上的管道,我希望它认为它是一个交互式终端,以便在重定向时获得相同的输出.

我当时认为将它包装在expect脚本中或使用proc_open()PHP中的它会这样做,但事实并非如此.

有什么想法吗?

bash terminal stdin pipe

137
推荐指数
7
解决办法
5万
查看次数

bash命令在管道时保留颜色

可能重复:
可以通过shell重定向捕获彩色输出吗?

建立

在这种情况下,特别是我试图在将git status -s它管道到另一个命令时保留颜色.

diff例如,某些git命令和其他命令grep有一个选项,--color=alwaysgit status没有.

有没有办法管道或捕获命令的输出,并让它认为它输出到xterm shell,所以它不会自动禁用颜色?

bash pipe colors xterm

31
推荐指数
2
解决办法
1万
查看次数

保留通过"少"或"更多"传送的文本的颜色

某些命令生成彩色文本以提高可读性.

我正在使用Linux.例如,当我使用rakhg diff 输出为彩色时,为了更好的可读性.

但是,当我通过管道输出 less

hg diff | less
Run Code Online (Sandbox Code Playgroud)

颜色丢失了.

我该如何保留颜色?

谢谢!

linux

20
推荐指数
2
解决办法
5396
查看次数

捕获彩色输出到bash变量

我想从git status变量中捕获颜色输出并稍后打印.

到目前为止,我已经达到:

status=$(git status -s)
echo -e "$status"
Run Code Online (Sandbox Code Playgroud)

上面的脚本保持换行完整(thx到捕获多行输出到Bash变量)但从输出中删除颜色.

有没有办法保持变量中的颜色并回显它?

variables bash colors

11
推荐指数
2
解决办法
1942
查看次数

管道到其他命令(例如 grep)时保留 heroku 日志输出的颜色

我正在使用 grep 来消除很多由 NewRelic 生成的日志噪声。我使用以下命令执行此操作:

heroku logs --force-colors -t -a myApp -s app | grep --color=never web.1
Run Code Online (Sandbox Code Playgroud)

不幸的是,日志的有用颜色在某处丢失了,并且输出是未着色的。

即使将输出移到别处,该--force-colors标志也应强制heroku logs命令输出颜色。该--color=never标志应该强制 grep 不使用他们自己的配色方案。

我已经尝试了所有可能的组合,但没有或没有这两种颜色标志,但无济于事。有人对如何解决这个问题有任何建议吗?

console pipe colors

6
推荐指数
1
解决办法
481
查看次数

在通过子进程传递标准输出时如何应用颜色?

我使用粉笔为命令行节点应用程序的输出着色。通常是这样的:

console.log(chalk.red(error));
Run Code Online (Sandbox Code Playgroud)

但是,我需要通过管道从子进程输出stdout,并为输出加上颜色:

var child = childProcess.spawn('foo', args);
child.stdout.pipe(process.stdout); //how to use chalk to colour this?
Run Code Online (Sandbox Code Playgroud)

从子进程中输入标准输出时,如何使用粉笔为颜色添加颜色?

child-process node.js chalk

5
推荐指数
0
解决办法
442
查看次数

bash - 从命令计数和输出行

我正在编写一个小脚本,需要运行一个输出多行的程序,然后显示这些行的计数.但是,该程序可能需要几秒钟才能运行,我宁愿不运行两次,一次用于输出,另一次用于计数.

我可以两次运行程序:

#!/bin/bash
count=$(program-command | wc -l)
program-command
printf "$count lines"
Run Code Online (Sandbox Code Playgroud)

有没有办法在只运行一次程序的同时获得计数和输出?此输出具有格式,因此理想情况下将保留格式(颜色).

bash

5
推荐指数
2
解决办法
2880
查看次数

标签 统计

bash ×4

colors ×3

pipe ×3

chalk ×1

child-process ×1

console ×1

linux ×1

node.js ×1

stdin ×1

terminal ×1

variables ×1

xterm ×1