Bagaimana menjalankan program saya sendiri tanpa menentukan jalurnya

11

Misalkan saya telah menyusun sesuatu dan saya menjalankannya seperti ini:

$ /path/to/my/executable/mycmd
Hello World

Apa yang harus saya lakukan untuk menjalankannya

$ mycmd
Hello World 

dari mana-mana di komputer saya?

nacho4d
sumber

Jawaban:

15

Apa yang Anda cari adalah PATHvariabel lingkungan. Ia memberi tahu shell, di mana ia perlu mencari program. Anda dapat melihat nilai saat ini dari variabel itu menggunakan echo:

echo "$PATH"

Sekarang ... Praktik terbaik jika Anda ingin menggunakan beberapa program baru adalah menginstalnya menggunakan program manajemen paket untuk distribusi Anda. Tetapi dalam hal ini, saya menganggap Anda sedang berurusan dengan program yang tidak dikirimkan oleh paket perangkat lunak yang tersedia. Untuk program semacam itu, Anda memiliki dua opsi:

  1. Instal seluruh sistem program, di tempat di mana sistem Anda tidak meletakkan file apa pun yang diinstal dari paket. Pada sebagian besar sistem, folder "aman" tersebut termasuk /usr/local/bin/dan /opt/bin/- itu seharusnya sudah ada di folder Anda PATH. (Lihat di dalam folder-folder ini dan jika ada banyak file di dalamnya, maka itu adalah tempat yang salah untuk meletakkan program Anda sendiri dan Anda harus melihat folder lain yang tercantum di dalam Anda PATH.)
  2. Ubah PATHvariabel Anda . Ini kurang aman, karena menentukan folder tambahan tempat program dapat disimpan dan seseorang mungkin memainkan trik pada Anda, meletakkan programnya sendiri di sana untuk Anda jalankan.

    Anda dapat mengubah PATHvariabel baik sementara, menggunakan

    export PATH="$PATH:/path/to/your/executable"
    

    (ingat $PATH sesudahnya = ), atau secara permanen dengan menambahkan baris di atas ke .bashrcfile Anda (dengan asumsi Anda menggunakan bash).

rozcietrzewiacz
sumber