# bat Remplaçant de *cat* https://github.com/sharkdp/bat ##### Installation: ```bash $ brew install bat $ brew install fzf ``` ##### Créer le fichier de configuration: ```bash $ bat --generate-config-file ``` ##### Editer la configuration: ```bash $ nano /Users/bruno/.config/bat/config ``` ##### Prévisualiser les thèmes: ```bash $ bat --list-themes | fzf --preview="bat --theme={} --color=always /Users/bruno/Documents/Scripts/bash/zsh_tools.sh" ``` ##### Tail et bat: ```bash $ tail -f /usr/local/var/log/httpd/error_log | bat --paging=never -l log STDIN 1 [Fri Nov 27 16:15:38.788043 2020] [core:notice] [pid 10014] AH00094: Command line: '/usr/local/opt/httpd/bin/httpd -D FOREGROUND' 2 [Fri Nov 27 16:22:54.224576 2020] [mpm_prefork:notice] [pid 10014] AH00173: SIGHUP received. Attempting to restart 3 [Fri Nov 27 16:22:54.278764 2020] [mpm_prefork:notice] [pid 10014] AH00163: Apache/2.4.46 (Unix) OpenSSL/1.1.1h PHP/8.0.0 configured -- resuming normal operations 4 [Fri Nov 27 16:22:54.278819 2020] [core:notice] [pid 10014] AH00094: Command line: '/usr/local/opt/httpd/bin/httpd -D FOREGROUND' ``` ##### Find et bat: ```bash $ find /usr -name error_log -exec bat {} + -rw-r--r-- 1 root wheel 0 Oct 18 2019 rmtab File: /usr/local/var/log/httpd/error_log 1 AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using SilverBook.local. Set the 'ServerName' directive globally to suppress this message 2 [Tue Aug 06 11:06:14.901395 2019] [mpm_prefork:notice] [pid 51047] AH00163: Apache/2.4.39 (Unix) configured -- resuming normal operations 3 [Tue Aug 06 11:06:14.904904 2019] [core:notice] [pid 51047] AH00094: Command line: '/usr/local/opt/httpd/bin/httpd -D FOREGROUND' ``` ##### Man pages: ```bash $ export MANPAGER="sh -c 'col -bx | bat -l man -p'" man 2 select ``` ##### Afficher les caractères non-imprimables: ```bash ❯ bat -A /etc/hosts File: /etc/hosts 1 ##␊ 2 #·Host·Database␊ 3 #␊ 4 #·localhost·is·used·to·configure·the·loopback·interface␊ 5 #·when·the·system·is·booting.··Do·not·change·this·entry.␊ 6 ##␊ 7 127.0.0.1├──┤localhost␊ 8 255.255.255.255├──┤broadcasthost␊ 9 ::1·············localhost␊ 10 #·Added·by·Docker·Desktop␊ 11 #·To·allow·the·same·kube·context·to·work·on·the·host·and·the·container:␊ 12 127.0.0.1·kubernetes.docker.internal␊ 13 #·End·of·section␊ ``` ##### Voir plusieurs fichiers en même temps: ```bash $ bat plugins.d/*.sh File: plugins.d/00-kymsu.sh 1 #!/usr/bin/env bash 2 echo "🦄 KYMSU self update" 3 pushd "$(cat ~/.kymsu/path)" > /dev/null 4 git pull 5 popd > /dev/null 6 echo "" File: plugins.d/antibody.sh 1 #!/usr/bin/env bash 2 3 # Antibody plugin for KYMSU 4 # https://github.com/welcoMattic/kymsu 5 # https://github.com/getantibody/antibody 6 File: plugins.d/conda.sh 1 #!/usr/bin/env bash 2 3 # conda plugin for KYMSU 4 # https://github.com/welcoMattic/kymsu 5 ``` ## bat-extras https://github.com/eth-p/bat-extras/blob/master/README.md#installation ```bash $ brew install eth-p/software/bat-extras ``` [batman](https://github.com/eth-p/bat-extras/blob/master/doc/batman.md) [batgrep](https://github.com/eth-p/bat-extras/blob/master/doc/batgrep.md) [batwatch](https://github.com/eth-p/bat-extras/blob/master/doc/batwatch.md) [batdiff](https://github.com/eth-p/bat-extras/blob/master/doc/batdiff.md)