- Creo muchos scripts de automatización en el directorio
~/bin/.
- Desde que descubrí
uv y los metadatos inline para scripts, empecé a usar más Python.
- Como
~/bin está en el PATH, quiero ejecutar los scripts directamente desde la línea de comandos.
- Para eso uso un shebang como este:
#!/usr/bin/env -S uv run --script
- La línea de comandos ahora ejecuta
uv run --script y pasa el archivo como argumento.
uv ignora el shebang y ejecuta el resto del archivo como un archivo normal de Python.
- Después de dar permisos de ejecución al script con el comando
chmod a+x {filename}, ya puedo usar scripts simples de línea de comandos escritos en Python. Estos scripts manejan automáticamente sus dependencias.
1 comentarios
Opinión de Hacker News
El uso de la opción
env -Spermite pasar varios argumentos en la línea shebangenv -Ses útil para separar y ejecutar los argumentos individualmenteSe mejora la forma de instalar herramientas CLI de Python usando
uvcurl | shuvpara instalar la herramienta CLISe ideó una forma de ejecutar archivos Prolog desde el shell
El artículo de Trey Hunner, "Lazy self-installing Python scripts with uv", ofrece más ejemplos y detalles
Se pueden escribir scripts para tareas pequeñas usando
miseuvAdministrar entornos de Python con
uv run pythonresulta conveniente.venvHay algunos puntos a tener en cuenta al usar
uvcomo ejecutor de comandos, pero en la mayoría de los casos ayuda a ahorrar tiempo.pydirectamenteLos usuarios de TypeScript pueden hacer algo similar con Deno
deno runse pueden agregar flags de permisosSe puede usar el gestor de paquetes Nix para administrar varios lenguajes y dependencias