GNU/Linux >> Belajar Linux >  >> Linux

Jalankan skrip Python tanpa memanggil `python` secara eksplisit

Ada dua hal yang perlu Anda lakukan:

  • Pastikan file dapat dieksekusi:chmod +x script.py
  • Gunakan shebang agar kernel tahu juru bahasa apa yang harus digunakan. Baris teratas skrip harus berbunyi:

    #!/usr/bin/python
    

    Ini mengasumsikan bahwa skrip Anda akan berjalan dengan python default. Jika Anda memerlukan versi tertentu, tentukan saja di shebang:

    #!/usr/bin/python2.7
    

Sekarang Anda dapat mengetik:

    ./script.py

jika skrip ada di direktori Anda saat ini, atau:

    script.py

jika lokasi skrip berada di PATH Anda, atau:

    path/to/script.py

jika tidak.


Di linux Anda cukup menggunakan hashbang (alias shebang). Tambahkan baris

#!/usr/bin/python

jika Anda ingin menjalankan juru bahasa python default.

#!/path/to/python[x.x]

untuk menggunakan beberapa versi tertentu, atau

#!/usr/bin/env python

Jika Anda ingin lingkungan menemukan python untuk Anda.

Anda juga akan diminta untuk membuat skrip dapat dieksekusi

chmod +x script[.py] 

Gunakan:

#!/usr/bin/env python

Ini akan memastikan bahwa python yang diharapkan pengguna akan digunakan adalah yang menjalankan skrip. Ini sangat penting jika pengguna menggunakan virtualenv untuk memiliki versi python tertentu di lingkungan tertentu.


Linux
  1. MySQLdump tanpa kata sandi di cronjob

  2. Menjalankan skrip shell secara paralel

  3. Bagaimana cara menjalankan skrip sebagai pengguna lain tanpa kata sandi?

  1. Jalankan skrip Python melalui crontab

  2. Jalankan skrip bash dari skrip lain tanpa menunggu skrip selesai dijalankan?

  3. Bagaimana cara membuat skrip Python dijalankan sebagai layanan?

  1. Jalankan skrip bash sebagai daemon

  2. Jalankan beberapa skrip python secara bersamaan

  3. Apakah perintah dalam skrip bash berjalan secara paralel atau satu demi satu?