Yop

Aller au contenu | Aller au menu | Aller à la recherche

Mot-clé - Couleur

Fil des billets - Fil des commentaires

mercredi, 26 juillet 2017

Personnalisation de bannière SSH avec image et texte


  • Récupérer une image idéalement en 32x32

J'ai pris un .png par exemple sur IconArchive.
(Mes 2 lecteurs, partagez vos sources d'icônes pour bannière en commentaires)

  • Installation de quelques paquets

Je ne suis plus trop sûr de ce qu'il faut exactement mais probablement

$ sudo apt-get install imagemagick texinfo openjdk-7-jdk coreutils perl git
  • Installation de util-say pour convertir les images en "texte"
$ git clone https://github.com/maandree/util-say.git
$ ./util-say/img2ponysay dilbert.png > dilbert.txt
Error: Unable to access jarfile ./util-say/util-say.jar
$ cd util-say &&  make && cd ..
$ ./util-say/img2ponysay dilbert.png > dilbert.txt
$  cat dilbert.txt 

  • ponysay a rajouté les lignes avec les $ qu'il faut virer dans notre cas

Suppression de la ligne qui contient "balloon":

 $ sed '/balloon/d' dilbert.txt  

Suppression des lignes avec les $:

 $ sed s/\\$\\\\\\$//g dilbert.txt 

Suppression des 5 premiers caractères de chaque ligne pour décaller l'image vers la gauche:

 $ sed 's/^.\{5\}//g' dilbert.txt 

Suppression des 3 premières lignes:

 $  sed 1,3d dilbert.txt 

Donc la ligne globale:

 $  sed '/balloon/d' dilbert.txt | sed s/\\$\\\\\\$//g | sed 's/^.\{5\}//g' | sed 1,3d > dilbert_cleaned.txt 

  • Script pour rajouter du texte

On édite le script ci-dessous pour modifier la police, les couleurs, et toutes les infos que l'on souhaite.

#!/bin/bash
NAME="Server"
OUT="/tmp/$NAME"
IP_PRV=""
IP_NAT=""
IP_PUB="1.2.3.4"
SERVICE="XXXX Paris"
HD="1 x 50GB"

echo "" > $OUT
echo "" >> $OUT
echo "" >> $OUT

toilet -f Graffiti $NAME | lolcat -f -F 0.3 >> $OUT

cecho () {
  local _color=$1; shift
  echo -ne "$(tput setaf $_color)$@$(tput sgr0)"
}

black=0; red=1; green=2; yellow=3; blue=4; pink=5; cyan=6; white=7;
echo "" >> $OUT

#cecho $white "IP Prv:  " >> $OUT
#echo "$IP_PRV" | toilet -f term | lolcat -f -F 0.4 >> $OUT

#cecho $white "IP NAT:  " >> $OUT
#echo "$IP_NAT" | toilet -f term | lolcat -f -F 0.4 >> $OUT

cecho $white "IP Pub:  " >> $OUT
echo "$IP_PUB" | toilet -f term | lolcat -f -F 0.4 >> $OUT

cecho $white "Service: " >> $OUT
echo "$SERVICE" | toilet -f term | lolcat -f -F 0.4 >> $OUT

cecho $white "Disks: " >> $OUT
echo "$HD" | toilet -f term | lolcat -f -F 0.4 >> $OUT

cat $OUT


echo ""
echo ""
echo "File output into $OUT"

On peut bien entendu modifier le script pour récupérer les infos automatiquement du serveur et ne pas avoir a modifier les valeurs à la main.

  • On installe les 2 paquets suivants utilisés par le script au-dessus
 $ sudo apt-get install toilet lolcat 

Allez voir le man de chaque commande pour les options.

  • On execute le script
 $ ./ip.sh 

A chaque execution, les couleurs seront un peu différentes

  • On joint les 2 fichiers en un seul
 $  paste dilbert_cleaned.txt  /tmp/Server > server.motd 

  • On copie le fichier server.motd dans /etc/motd du serveur
  • Vérifier dans le /etc/ssh/sshd_config que vous avez bien la ligne:
 PrintMotd yes 

jeudi, 13 juillet 2006

Thème de couleur pour vim

Suite du billet Un peu de couleur dans vi

mkdir -p ~/.vim/colors

Mettre dans ce répertoire les thèmes .vim

Un max de thèmes avec preview pour différents languages sont à cette adresse
Attention, certains sont au format "Windows"?? avec les ^M

strings file.vim > file.vim2 && rm file.vim && mv file.vim2 file.vim

Ensuite dans vi la commande

:colorscheme file

ou mettre dans le fichier ~/.vimrc ou /etc/vim/vimrc la ligne

syntax on
colorscheme file

mercredi, 5 juillet 2006

Configuration de l'historique de BASH

La commande history permet d'afficher les dernières commandes du Bash...(celles qui sont également accessibles avec les flèches du haut/du bas)..
Quelques améliorations sont possibles sur la façon de gérer cet historique...

  • Fonctionnement général

À l'ouverture d'une session, le fichier HISTFILE est lu et les HISTSIZE dernières commandes sont mises en mémoire. À la fermeture d'une session, les HISTSIZE dernières commandes en mémoire sont inscrites dans le fichier HISTFILE (dans la limite de HISTFILESIZE)

Avec bash (mais pas tous les shells), chaque session garde son propre historique en mémoire jusqu'à sa fermeture, ce qui ne permet pas de partager en temps réel les historiques entre les sessions...
On peut cependant forcer l'écriture avec history -w et forcer la lecture avec history -r

Maintenant place à la pratique...
J'ai mis ces différentes variables dans mon .bashrc mais le .bash_profile est peut être plus propre...

  • HISTSIZE

The number of commands to remember in the command history [...] . The default value is 500.[...]

HISTSIZE=1000

  • HISTFILESIZE

The maximum number of lines contained in the history file. [...] The default value is 500.[...]

HISTFILESIZE=100000

  • HISTFILE

The name of the file in which command history is saved [...]. The default value is ~/.bash_history.[...]

  • HISTTIMEFORMAT

If this variable is set and not null, its value is used as a format string for strftime(3) to print the time stamp associated with each history entry displayed by the history builtin. If this variable is set, time stamps are written to the history file so they may be preserved across shell sessions.[...]

CYAN=$(echo -e '\e[0;36m')
NORMAL=$(echo -e '\e[0m')
HISTTIMEFORMAT="${CYAN}[ %d/%m/%Y %H:%M:%S ]${NORMAL} "

  • HISTCONTROL

A colon-separated list of values controlling how commands are saved on the history list. A value of ignoreboth is shorthand for ignorespace and ignoredups. [...] ignorespace: lines which begin with a space character are not saved in the history A value of ignoredups causes lines matching the previous history entry to not be saved.[...]

HISTCONTROL=ignoreboth
#permet de ne pas ecrire dans l'historique
# - si la commande commence par un espace
# - si la commande précédente était la même

  • HISTIGNORE

A colon-separated list of patterns used to decide which command lines should be saved on the history list.[...]

HISTIGNORE="ls:cd:ll"
# permet de ne pas ajouter a l'historique les commandes cd, ls ou ll (sans arguments)

dimanche, 21 mai 2006

Meilleur que top - htop

sudo apt-get install htop
man htop

dimanche, 6 novembre 2005

Un peu de couleur dans vi (vim - Vi IMproved)

Toujours dans une quête de rendre la console (et mes connexions ssh) plus fun facile à lire, on peut utiliser vim - Vi IMproved - enhanced vi editor

apt-get install vim

Puis dans le fichier /etc/vim/vimrc décommenter les lignes:

syntax on
set background=dark

ou pour un fond clair:

set background=light

vi /etc/vim/vimrc nous donne donc:

- page 1 de 2