Skip to main content

Tranformer des données

Couper le début d'une réponse

cat /mon/fichier | cut -c 19- 


--> On retire les 18 premiers chars

Générer une chaine aléatoire : 

< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-32};echo;

Filtrer le résultat d'une commande : Récupérer la X ième collone

docker ps

CONTAINER ID   IMAGE                  COMMAND              CREATED      STATUS      PORTS     NAMES
b47869c06afa   local_ansible:latest   "tail -F anything"   4 days ago   Up 4 days             XXXXXXXXXX.1.xkdfozjzesx3i9tiiwi7v4mx2
98d251874810   local_ansible:latest   "tail -F anything"   4 days ago   Up 4 days             XXXXXXXXXX.1.30q690xvddk600wt35tuii2qr
e59db4bf005e   local_ansible:latest   "tail -F anything"   4 days ago   Up 4 days             XXXXXXXXXX.1.wf6mpbnyl3fmvvl1dm6rvgx7q
d5bb4b393058   local_ansible:latest   "tail -F anything"   4 days ago   Up 4 days             XXXXXXXXXX.1.ug7xuyrdx61jz2hyir01i85dl
c7e24c57b1c3   local_ansible:latest   "tail -F anything"   4 days ago   Up 4 days             XXXXXXXXXX.1.xgn2wopz174n4vsq8sfu1hbuz

docker ps | awk '{print $1}'

CONTAINER
b47869c06afa
98d251874810
e59db4bf005e
d5bb4b393058
c7e24c57b1c3

$1 représente la première collone ; pour la suivante ce sera $2 etc.

Couper un affichage à partir d'un caractère :
cat monfichier.log | cut -d "|" -f 2

Convertir des timestamps milisencondes en date humaines :

# dans mon fichier tmp j'ai des lignes de timestamp en format ms
for line in $(cat /var/lib/db_backup/tmp); do date -ud @$(($line / 1000)); done;