Bagaimana saya bisa mengedit $ PATH di linux?

44

Saya menggunakan ubuntu 9.04 Saya perlu menambahkan beberapa folder ke $ PATH saya. Saya tahu cara membaca jalan:

echo $PATH

Saya ingin dapat mengeditnya dan menambahkan 2 jalur lainnya.

Terima kasih

Arthur
sumber
2
Setelah Anda dapat melakukan ini, Anda mungkin ingin melakukan operasi yang lebih canggih di PATH: stackoverflow.com/questions/273909/…
dmckee
Milik situs Unix atau Ubuntu.
Thomas Bratt

Jawaban:

42

Untuk menyimpan jalur Anda secara permanen, Anda memiliki beberapa opsi.

Saya sarankan Anda membaca wiki komunitas Ubuntu pada Variabel Lingkungan tetapi jawaban singkatnya adalah tempat terbaik ~/.profileuntuk pengaturan PATH per pengguna atau /etc/profileuntuk pengaturan global.

Lakukan sesuatu seperti export PATH=$PATH:/your/new/path/here

akent
sumber
8
Penting untuk dicatat bahwa ada banyak kesempatan profil Anda tidak berjalan (seperti ketika skrip dijalankan oleh cron). Jika Anda memerlukan jalur khusus untuk ditetapkan di PATH, skrip harus mengatur jalur itu. Yang mengatakan, skrip tidak boleh bergantung pada apa pun yang ada di jalur mereka dan harus selalu menggunakan jalur absolut, apa pun adalah masalah keamanan.
Chas. Owens
14
PATH=$PATH:newPath1:newPAth2
export PATH
Lembah kecil
sumber
3
Saya pikir Anda bisa melakukan itu semua dalam satu baris jika Anda mau. export PATH = $ PATH: newPath1: newPAth2
2
Itu tergantung pada shell yang Anda gunakan. Pada Solaris (saya tahu pertanyaannya adalah tentang Linux) salah satu shell (tidak ingat yang mana yang berada di atas kepala saya) mengharuskan Anda melakukan ekspor secara terpisah dari menetapkan nilai dalam skrip. Jadi saya baru saja terbiasa melakukannya di 2 baris.
Glen
7

Anda juga dapat menempatkan ini di lingkungan global:

sudo emacs /etc/environment

Tambahkan ke entri yang sudah ada di jalur Anda

PATH="/path/to/file:/other/paths"

Muat ulang lingkungan

source /etc/environment
jaketrent
sumber
1
Mengedit file lingkungan adalah satu-satunya cara saya bisa mengubah PATH dan tetap berubah.
2

Sudah dijawab tentang bagaimana melakukan itu, tetapi saya ingin memberi Anda sedikit tip. Inilah yang saya lakukan:

Saya memiliki direktori bernama .bash.ddi saya $HOMEdan di dalamnya saya menyimpan satu set skrip shell yang melakukan hal-hal untuk lingkungan saya (misalnya setup pakar dengan benar, memodifikasi path, mengatur prompt saya dll). Saya menjaga ini di bawah kontrol versi dengan menggunakan git , yang membuatnya mudah untuk kembali ke versi env yang berfungsi, jika Anda mengacaukan sesuatu dengan buruk. Untuk mendapatkan semua modifikasi, saya cukup sumber semua file di dir itu di akhir .bashrc saya seperti ini:

for i in $HOME/.bash.d/*; do source $i; done
unset i

Ini memberi Anda lingkungan yang sangat fleksibel sehingga Anda dapat dengan mudah memodifikasi dan mengembalikan + Anda dapat mengekspornya ke mesin lain hanya dengan menggunakan git.

André
sumber
1

Varian dari atas, jika Anda tidak ingin mengubah file / etc / profile secara langsung. Anda dapat membuat file baru yourpath.sh di direktori /etc/profile.d/ . Kemudian edit file ini seperti itu. Dengan editor vim (tapi jangan mengeditnya dengan editor lain): vim /etc/profile.d/yourpath.sh

MYPATH='/your/new/path/'
export MYPATH
export PATH=$PATH:$MYPATH

: ritus dan q uit dan selesai jalur Anda telah dimodifikasi. Jika Anda menggunakan terminal, tutup dan buka kembali. variabel baru Anda akan diperbarui. Sekarang lebih bersih, Anda dapat menghapus file ini ketika Anda tidak membutuhkannya lagi dan itu tidak mengganggu konfigurasi awal.

Arthur Vandergood
sumber
(1) Selama PATHdiekspor, MYPATHtidak perlu (kecuali Anda membutuhkannya untuk tujuan lain). (2) Cara cepat untuk menyimpan (menulis) dan berhenti di vim adalah ZZ- tidak :atau (Enter) diperlukan.
Scott
0

echo PATH = $ PATH: path1: path2> tmp

Edit file tmp dengan editor teks favorit Anda sehingga nilai PATH tepat seperti yang Anda inginkan

. ./tmp

tempat makan
sumber