2 poin oleh GN⁺ 2025-01-29 | 1 komentar | Bagikan ke WhatsApp
  • Banyak membuat skrip otomatisasi di direktori ~/bin/.
  • Sejak menemukan uv dan metadata skrip inline, jadi lebih sering menggunakan Python.
  • Karena ~/bin ada di path, ingin menjalankan skrip langsung dari baris perintah.
  • Untuk itu, menggunakan shebang berikut: #!/usr/bin/env -S uv run --script
  • Baris perintah kini menjalankan uv run --script dan meneruskan file sebagai argumen.
  • uv mengabaikan shebang dan menjalankan sisa file sebagai file Python biasa.
  • Setelah memberi izin eksekusi pada skrip dengan perintah chmod a+x {filename}, kini bisa menggunakan skrip baris perintah sederhana yang ditulis dengan Python. Skrip ini otomatis menangani dependensi.

1 komentar

 
GN⁺ 2025-01-29
Opini Hacker News
  • Opsi env -S memungkinkan pengiriman beberapa argumen di baris shebang

    • Ini mematahkan anggapan umum bahwa baris shebang di Linux hanya bisa menerima satu argumen
    • env -S berguna untuk memisahkan dan mengeksekusi argumen secara individual
  • Cara memasang alat CLI Python dengan uv dibuat lebih baik

    • Pemasangan bisa dilakukan dengan mudah menggunakan skrip curl | sh
    • Alat CLI dipasang dengan membuat paket instalasi kecil di PyPI yang bergantung pada uv
    • Bisa dipasang di lingkungan terisolasi tanpa perlu mengelola lingkungan virtual Python
    • Isu GitHub akibat masalah dependensi yang rumit berkurang
  • Dirancang cara agar file Prolog bisa dijalankan dari shell

    • File Prolog juga dibuat agar dikenali sebagai file shell sehingga bisa dieksekusi
    • Baris pertama diperlakukan sebagai komentar oleh shell untuk mencegah error
  • Artikel Trey Hunner "Lazy self-installing Python scripts with uv" memberikan lebih banyak contoh dan detail

  • mise dapat digunakan untuk menulis skrip untuk tugas-tugas kecil

    • Diperkenalkan cara menjalankan skrip Python dengan uv
  • Mengelola lingkungan Python dengan uv run python terasa praktis

    • REPL dapat dijalankan dalam lingkungan proyek tanpa perlu mengelola .venv
    • Masalah instalasi sistem bisa diatasi, dan eksekusi dapat dilakukan langsung di dalam proyek/lingkungan
  • Ada beberapa hal yang perlu diperhatikan saat menggunakan uv sebagai peluncur perintah, tetapi dalam kebanyakan kasus ini membantu menghemat waktu

    • Ada opsi untuk mengatasi masalah path saat menjalankan file .py secara langsung
  • Pengguna TypeScript dapat melakukan hal serupa dengan Deno

    • Dengan deno run, flag izin dapat ditambahkan
  • Manajer paket Nix dapat digunakan untuk mengelola berbagai bahasa dan dependensi

    • Skrip portabel dalam satu file dapat ditulis