我已经广泛定制了我的终端提示的外观/感觉,以便它输出以下内容(用于开发工作):
== [~/current/path] (git_branch_name) $
当我查看大量文本博客时,我使用 ==
来帮助识别提示行。
然而,在使用了几个月之后,我发现很难轻易地看一眼终端就知道是什么。
我的想法是缩进所有输出会有所帮助。我知道我也可以更改颜色,但我想同时使用这两种解决方案。
但我不知道如何缩进发送到终端的所有输出。 MAN 页面对我没有帮助,我在 Google 上也找不到太多内容。
我想做什么
$ some_command_that_outputs_text
所有输出行都缩进 2 个空格...
所有输出行都缩进 2 个空格...
所有输出行都缩进 2 个空格...
所有输出行都缩进 2 个空格...
$ another_terminal_prompt
更多行缩进 2 个空格...
更多行缩进 2 个空格...
更多行缩进 2 个空格...
更多行缩进 2 个空格...
更新时间:2014-10-24
请注意,我已经为我的终端以及提示本身定制了配色方案。我发现颜色方案不足以让我个人找到我的命令,因为大部分文本本身的颜色与我的提示本身相似。
最佳答案
在您当前的 bash
中,您可以执行以下操作:
exec 1> >(sed -r 's/^(.*)/ \1/g')
或者如果您的 sed
实现不支持 -r
标志,则使用它:
exec 1> >(sed 's/^/ /')
将标准输出文件描述符 (stdout) 重定向到 sed
,向输出的每一行添加两个换行符。试试看:
$ ls -l
total 0
drwxr-xr-x 2 root root 40 Oct 22 16:35 dir
-rw-r--r-- 1 root root 0 Oct 22 16:59 file
$
关于shell - 缩进终端/shell 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26509849/