Fonctions-utiles ( 10 / 21 articles - Voir la liste )

Astuce Qui utilise le port ?

Sous Windows, pour savoir quel processus utilise un port, lancez la commande Get-Process dans Powershell :

Exemple pour le port 5433 :

Get-Process -Id (Get-NetTCPConnection -LocalPort 5433).OwningProcess

Astuce Analyser l’occupation de l’espace disque

Sous Linux, l’utilitaire ncdu (pour NCurses Disk Usage) permet de trouver quel fichier ou répertoire vous bouffe tout votre espace disque.

Il est disponible sur les dépôts officiels Debian et Ubuntu et donc facile à installer.

sudo apt install ncdu
ncdu

Note : ncdu a été réécrit dans une v2 encore récente. Selon la version des dépôts, c’est peut-être la v1 qui sera installée.

Astuce Supprimer les images/conteneurs/volumes docker

Pour supprimer tous les conteneurs docker :

docker rm $(docker ps -a -q)

Pour supprimer toutes les images docker :

docker rmi $(docker images -q)

Pour supprimer tous les volumes docker :

docker volume prune

Astuce Savoir quel processus utilise un port

Sous Linux, vous pouvez utiliser la commande suivante pour savoir quel processus utilise un port :

# Pour le port 80
netstat -tlnp | grep 80

Cela retournera par exemple :

tcp6       0      0 :::80                   :::*                    LISTEN      32198/apache2

L'ID du processus étant ici 32198.

Remarque : Pour voir tous les processus, il sera peut-être nécessaire de lancer la commande en tant que root (ou avec sudo).

Astuce Les nouveaux opérateurs introduits par PHP 7

PHP 7 introduit 2 nouveaux opérateurs : ?? et <=>, nommés respectivement Null coalescent et Spaceship.

Null coalescent

Cet opérateur permet de simplifier l'affectation des valeurs par défaut via les opérateurs ternaires :

$value = (isset($x) && $x !== null) ? $x : $defaultValue;

peut maintenant s'écrire :

$value = $x ?? $defaultValue;

Comme l'indique la documentation, il permet de vérifier si une variable existe et est non nulle.

Remarque : Il ne faut pas le confondre avec l'opérateur ternaire "abrégé" (depuis PHP 5.3), à savoir ?:. Celui-ci permet juste d'omettre la partie centrale, sans vérifier l'existence de la variable.

$value = $x ?: $valueIfXIsFalse;

$value devient $x si $x est considéré comme "vrai" . $value devient $valueIfXIsFalse si $x est considéré comme "faux".
Contrairement au null coalescent, il reverra un warning si $x n'est pas défini.

Spaceship

Cet opérateur permet de simplifier la comparaison entre deux variables :

$comparison = ($a < $b) ? -1 : (($a > $b) ? 1 : 0);

peut maintenant s'écrire :

$comparison = $a <=> $b;

Comme l'indique la documentation, cet opérateur retourne donc -1, 1 ou 0 selon la différence entre $a et $b.

Astuce Connaître le poids et le nombre de fichiers d'un répertoire

Poids total

Pour connaître le poids total des fichiers (et sous-répertoires) que contient un répertoire, vous pouvez utiliser la commande du :

du -shL mon/repertoire

Explication :

Les options s, h et L permettent respectivement de faire la somme, afficher un poids lisible par un humain (en Ko, Mo, ...) plutôt qu'en octets et suivre les liens symboliques (plutôt que de compter le poids du lien).

Nombre de fichiers

Pour connaître le nombre de fichiers il faut cette fois composer avec plusieurs commandes :

find -L mon/repertoire -type f | wc -l

Explications :

  • La commande find avec l'option -type f permet de lister les fichiers
  • L'option -L permet de suivre les liens symboliques
  • La commande wc -l compte le nombre de lignes (ici celles retournées par find)

Astuce Rechercher un paquet

Si vous êtes sous une distribution avec apt d'installé, vous pouvez rechercher un paquet avec la commande suivante :

apt-cache search terme1 terme2

Remarques :

  • Si vous indiquez plusieurs termes, seuls les résultats avec chacun d'eux seront retournés
  • Les regexp sont gérées (au moins en partie). Ex : apt-cache search php.*memcach.

Si vous avez aptitude d'installé, une commande plus simple à mémoriser existe :

aptitude search terme1 terme2

Astuce Créer un lien symbolique

Pour créer un lien symbolique sou linux, il suffit d'utiliser la commande suivante :

ln -s chemin/vers/la/cible/du/lien chemin/vers/lien

Le premier paramètre contient le répertoire ou fichier à cibler, et le second le chemin/nom du lien à créer.

Les chemins peuvent-être relatifs ou absolus.

Astuce Connaître l'espace disque restant

Sous linux, vous pouvez rapidement connaître l'espace disque restant grâce à la commande :

df -h

Note : comme pour beaucoup d'autres commandes Linux, l'option -h permet un affichage plus humain, notamment pour le poids des fichiers (ie. 1.2mo au lieu de 1200000).

Astuce Sauvegarder/Importer une base de données PostgreSQL

Se connecter

Pour pouvoir exporter/importer une base de données PostgreSQL vous devrez sans doute vous connecter avec l'utilisateur système postgres.

Ex:

sudo su - postgres

Sauvegarder

Pour créer un dump de votre base de données utilisez la commande suivante :

pg_dump -U username -h localhost dbname > path/to/dump.sql

Par défaut :

  • l'hôte utilisé est localhost
  • le port utilisé est 5432

D'autres options sont possibles.

Remarque :

Même si c'est la valeur par défaut, il est parfois nécessaire de préciser l'hôte dans la commande, pour indiquer au client postgres que vous accédez à la base via une connexion TCP et non PEER.

Importer

La commande d'import est similaire à celle de dump :

psql -U username -h localhost dbname < path/to/dump.sql

Par défaut :

  • l'hôte utilisé est localhost
  • le port utilisé est 5432