Des outils CLI cachés dans la bibliothèque standard de Python
(til.simonwillison.net)- La bibliothèque standard de Python inclut des outils CLI cachés qui peuvent être exécutés dans le terminal
- Il est par exemple possible d'utiliser gzip avec
python -m gzip --decompress pypi.db.gz
- Il est par exemple possible d'utiliser gzip avec
- Cela est possible parce que les modules Python qui contiennent un bloc
if __name__ == "__main__"peuvent être exécutés avecpython -m nom_du_module - Quelques-uns des modules qui peuvent être utilisés ainsi
python -m http.server 8001python -m asynciopermet d'utiliserawaitau niveau supérieur dans la console Pythonpython -m tokenize cgi.py | head -n 10mode debug du tokenizer Pythonpython -m ast cgi.py | head -n 10mode debug de l'ASTpython -m json.toolpermet de faire un pretty print de JSONpython -m nntplibaffiche par défaut les derniers messages du groupe de discussion gmane.comp.python.general (malheureusement, les autres groupes ne sont pas pris en charge)python -m calendaraffiche le calendrier de l'année en cours, avec une sortie HTML possible via-t html
- La bibliothèque standard de Python cache bien d'autres petits outils très utiles
3 commentaires
Le serveur web est bien pratique. Au bureau, quand on transfère via
scp, le débit est fortement bridé (sans doute pour des raisons de sécurité;;;), et l'accès Samba est aussi extrêmement lent.... Donc quand il faut récupérer de gros fichiers, on passe par le serveur web Python....python -m base64:echo "test string" | python -m base64 -e | python -m base64 -dpython -m imghdr IMAGE_FILENAMEpython -m sndhdr SOUND_FILENAMEpython -m inspect PYTHON_PKGOn finit parfois par en avoir besoin.
Avis Hacker News
re.Scannerde la bibliothèque standard Python est un tokenizer basé sur des expressions régulières, absent de la documentation officielle.if __name__ == "__main__":permet d’exécuter un module comme un fichier *.py autonome.zipfilepeut être utilisé en ligne de commande pour compresser et décompresser des fichiers zip.json.toolpeut être utilisé en ligne de commande pour afficher joliment du JSON.http.serverest utile pour partager des fichiers sur un réseau local.