Como fazer o relógio exibir sua saída no centro da tela?

1

Toda vez que eu uso o comando watch no terminal, a saída é exibida a partir do início da tela e parece um pouco estranho. Eu estou esperando fazer o relógio exibir a saída no centro da tela.

$ watch -n 1 du -hs "*.part"

52K     Prince of Tennis Episode 100 English Subbed Online - Chia-Anime.mp4.part
64M     Prince of Tennis Episode 92 English Subbed Online - Chia-Anime.mp4.part
53M     Prince of Tennis Episode 93 English Subbed Online - Chia-Anime.mp4.part
23M     Prince of Tennis Episode 94 English Subbed Online - Chia-Anime.mp4.part
13M     Prince of Tennis Episode 95 English Subbed Online - Chia-Anime.mp4.part
24K     Prince of Tennis Episode 96 English Subbed Online - Chia-Anime.mp4.part
12K     Prince of Tennis Episode 97 English Subbed Online - Chia-Anime.mp4.part
40K     Prince of Tennis Episode 98 English Subbed Online - Chia-Anime.mp4.part
36K     Prince of Tennis Episode 99 English Subbed Online - Chia-Anime.mp4.part  

Eu quero que esta saída comece a aparecer no centro da tela.

    
por devilz 10.06.2017 / 07:41

1 resposta

0

Você pode combinar watch e printf para produzir o resultado desejado.

Aqui está um script de exemplo:

#!/bin/bash
columns="$(tput cols)"
du -hs *.part | while read i; do
   printf "%*s\n" $(( (${#i} + columns) / 2)) "$i"
done

Salve-o com um nome como script.sh e execute-o como:

watch bash script.sh

a saída seria:

                            4.0K    myfile
                            4.0K    anotherfile
                        54M coreutils-8.25
            28K coreutils_8.25-2ubuntu2.debian.tar.xz
                 4.0K   coreutils_8.25-2ubuntu2.dsc
                 5.5M   coreutils_8.25.orig.tar.xz

Aqui está outro script:

#!/bin/bash

for i in *.part
do
 title='du -hs "$i"'
 echo -e "\t\t\t\t$title\n"
done

execute:

watch bash myscript.sh

vai mostrar um resultado parecido com:

                    4.0K    myfile

                    4.0K    anotherfile

                    54M     coreutils-8.25

                    28K     coreutils_8.25-2ubuntu2.debian.tar.xz

                    4.0K    coreutils_8.25-2ubuntu2.dsc

                    5.5M    coreutils_8.25.orig.tar.xz

Use quantos \t você precisa para obter o resultado desejado.

    
por Ravexina 10.06.2017 / 07:47