É possível pré-anexar toda saída de terminal com um certo caractere?

3

Por exemplo, digamos que eu queira executar o comando ll:

Minha saída seria algo como isto:

josh@zeitgeist ~ ll
total 41148
drwxr-xr-x 42 josh josh     4096 Aug  4 22:52 ./
drwxr-xr-x  4 root root     4096 Jul  9 21:18 ../
-rw-rw-r--  1 josh josh  3523718 Jul 11 00:17 2017-07-11-001710_3840x2160_scrot.png

mas eu quero que seja assim:

josh@zeitgeist ~ ll
   total 41148
   drwxr-xr-x 42 josh josh     4096 Aug  4 22:52 ./
   drwxr-xr-x  4 root root     4096 Jul  9 21:18 ../
   -rw-rw-r--  1 josh josh  3523718 Jul 11 00:17 2017-07-11- 001710_3840x2160_scrot.png

Eu já sei sobre o uso do PS1 = 'XXX' para alterar o prompt; Existe uma maneira de alterar cada linha da saída que é exibida, para cada comando , especificamente no terminal (não alterando a saída e colocando-a em um arquivo)?

Eu gostaria de fazer isso para ter uma linha de caracteres de recuo no lado esquerdo do meu terminal. Atualmente, estou trabalhando para criar um desktop inspirado em ficção científica, e uma das coisas que estou fazendo é criar uma borda irregular única em torno de minhas janelas de terminal sem curvatura e sem urlvt usando uma imagem de fundo terminal. O único problema é que não consigo descobrir como prefixar o espaçamento para o início de toda a saída, porque a saída abraça a borda esquerda da janela, que cobre o paret do plano de fundo que eu quero visível. Eu tentei usar URxvt internalBorder e externalBorder, mas eles cobrem a imagem de fundo nas bordas inferior e direita do terminal.

    
por suhmedoh 06.08.2017 / 20:02

1 resposta

5

Que tal isso. Inicia um novo % processo debash que é canalizado para awk , onde cada linha canalizada obtém alguns espaços impressos antes de $ 0 (a linha de entrada)

$ bash | awk '{print "  " $0}'
$ id
  uid=500(ec2-user) gid=500(ec2-user) groups=500(ec2-user),10(wheel)
$ uname -a
  Linux ip-172-31-37-61 4.9.38-16.33.amzn1.x86_64 #1 SMP Thu Jul 20 01:31:29 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
$
    
por 06.08.2017 / 20:51