Variabel PATH permanen

38

Bagaimana saya membuat /media/De Soft/mongodb/binvariabel PATH ini permanen?

Semua orang mengatakan " export PATH=$PATH:media/De\ Soft/mongodb/binkepada Anda ~/.profile, atau .bashrc, .zshenvtergantung pada shell Anda".

Saya tidak tahu apa itu ~/.profile, atau .bashrc, atau .zshenv. Apa yang sebenarnya mereka lakukan?

Bagaimana saya akan menambah export PATH=$PATH:my/path.profile / .bashrc / .zshenv saya?

Saya menggunakan 64 bit Ubuntu 14.04 LTS dengan terminal default.

Towhid
sumber

Jawaban:

70

Mereka adalah file konfigurasi. Satu arah:

  • Buka jendela terminal menggunakan Ctrl + Alt + T
  • Jalankan perintah gedit ~/.profile
  • Tambahkan baris

    export PATH=$PATH:/media/De\ Soft/mongodb/bin

    ke bawah dan simpan

  • Logout dan log in lagi

Edit:

Cara yang lebih aman adalah dengan menggunakan kutipan. Hal ini diperlukan jika satu atau lebih direktori dalam dokumen asli PATHberisi spasi. Begitu:

export PATH="$PATH:/media/De Soft/mongodb/bin"
Gunnar Hjalmarsson
sumber
@ GunnarHjalmarsson, apakah saya benar-benar perlu mengekspor PATH var? Mungkin, ini dilakukan secara default di beberapa skrip lain? Saya telah memeriksa oleh ~ / .profile dan PATH var ada di sana, tetapi tidak diekspor secara eksplisit: PATH = ~ / .local / bin: $ JAVA_HOME / bin: $ PATH
yuranos87
4
@ yuranos87: ​​Tidak, Anda benar; ketika memodifikasi PATHdi ~/.profile, mengekspor berlebihan, karena PATHsudah merupakan variabel lingkungan.
Gunnar Hjalmarsson
1
Anda tidak perlu keluar dan masuk lagi. Gunakan source ~/.profile.
timbo
1
@ timbo: Itu tidak membuat variabel tersedia untuk sudah memulai proses dalam sesi (kecuali untuk terminal saat ini).
Gunnar Hjalmarsson
1
Apakah Anda tidak memerlukan tanda kutip dalam string seperti pada export PATH="$PATH:/media/De\ Soft/mongodb/bin"? Apakah itu opsional?
Bruno Bentzen
4

Ketik yang berikut di jendela terminal

export PATH=/media/De\ Soft/mongodb/bin:$PATH 

Tutup terminal dan nyalakan kembali komputer. Path harus menyertakan / media / De \ Soft / mongodb / bin ketika Anda mengetik ini di terminal:

echo $PATH
Nivedita Velagaleti
sumber
13
Itu hanya berfungsi untuk sesi terminal saat ini. Itu harus di ~/.profile(atau ~/.bashrcpada distro umum GNU / Linux ... datar ~/.bash_profile) untuk dijalankan pada setiap beban konsol.
Alejandro Iván
sepakat. tetapi pada saat sistem restart, ia dimuat dalam variabel path.
Nivedita Velagaleti
10
@NiveditaVelagaleti: Tidak, itu tidak kecuali Anda membuatnya gigih melalui file konfigurasi. Perintah terminal tidak berubah secara PATHterus-menerus.
Gunnar Hjalmarsson
2

Untuk mengubah secara permanen, PATHAnda perlu membuat perubahan ke /etc/environmentfile. Buat cadangan sebelum diedit:

sudo cp /etc/environment /etc/environment.bak
sudo nano /etc/environment

keluaran sampel:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

Path dibatasi oleh :jadi untuk menambahkan path baru katakan x/y/zini akan bagaimana kita /etc/environmentterlihat seperti:

PATH="x/y/z:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
Xaqron
sumber