Bagaimana cara menambahkan direktori ke MANPATH atau INFOPATH?

19

Saya rasa saya mengerti instruksi yang diberikan dalam Cara menambahkan direktori ke PATH? tentang menambahkan direktori ke $ PATH. Tetapi saya tidak mengerti bagaimana cara menambahkan direktori ke $ MANPATH atau $ INFOPATH.

Juga - dalam mencari bantuan di Google, saya perhatikan bahwa kadang-kadang arah mengatakan export PATH=/usr/share/lib/something:$PATHdan kadang-kadang mengatakan export PATH=$PATH:/usr/share/lib/something. Yang mana itu?

isomorfisma
sumber

Jawaban:

24
  1. Ini 2 hampir sama:

    export PATH=/usr/share/lib/something:$PATH 
    export PATH=$PATH:/usr/share/lib/something
    

    Satu-satunya perbedaan adalah bahwa yang pertama menempatkan direktori untuk ditambahkan di depan dan yang kedua meletakkannya di belakang direktori saat ini $PATH. Itu hanya masalah jika ada perintah di dalam /usr/share/lib/somethingyang memiliki nama yang sama di dalam salah satu direktori di $PATH.

  2. Untuk menambahkan direktori ke $MANPATHatau $INFOPATHseperti yang diperlukan dari tautan yang Anda posting Anda melakukannya dengan mengubah file konfigurasi di dalam tautan.

    Dikatakan untuk membuka versi global bash.bashrcdengan:

    sudo vi /etc/bash.bashrc
    

    dan menambahkan di akhir:

    PATH=/usr/local/texlive/2010/bin/x86_64-linux:$PATH; export PATH
    MANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH
    INFOPATH=/usr/local/texlive/2010/texmf/doc/info:$INFOPATH; export INFOPATH
    

    Ini mengatur $PATH, $MANPATHdan $INFOPATH. Dan itu juga memberitahu Anda untuk mengedit /etc/manpath.configdengan:

    sudo vi /etc/manpath.config
    

    dan menambahkan

    MANPATH_MAP /usr/local/texlive/2010/bin/x86_64-linux /usr/local/texlive/2010/texmf/doc/man
    

    di bawahnya # set up PATH to MANPATH mapping.


Jika Anda tidak yakin tentang hal ini, buat cadangan pertama (tidak pernah menjadi hal buruk) dengan:

sudo cp /etc/bash.bashrc /etc/bash.backup_$(date +"%Y_%m_%d").bashrc
sudo cp /etc/manpath.config /etc/manpath.backup_$(date +"%Y_%m_%d").config

String aneh berubah menjadi tanggal saat ini. Jika Anda mengacaukan, cukup salin cadangan kembali ke file asli:

$ touch test1
$ cp test1 test1.$(date +"%Y_%m_%d")
$ ls
test1  test1.2014_11_14  
Rinzwind
sumber
1
Saya menginstal texlive 2012 di Ubuntu Precise dan echo $MANPATHkembali /usr/local/texlive/2012/texmf/doc/mankepada saya. Ketika saya menambahkan jalur ke laporan konfigurasi bash /usr/local/texlive/2012/texmf/doc/man:/usr/local/texlive/2012/texmf/doc/mandan zsh masih melaporkan /usr/local/texlive/2012/texmf/doc/man. Untuk zsh saya menambahkan path ke /etc/zsh/zshrc. Saya tidak yakin apakah ini benar. Saya juga mencoba mengedit /etc/environment, seperti yang disarankan di sini , meskipun tidak berhasil.
JJD
Perintah apa yang bisa saya lihat setelah menulis MANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH? Saya mencoba man tlmgrdan mengatakan bahwa itu tidak ada.
Arturo
2

Jika halaman manual Anda ada /usr/local/myproject/man, yang perlu Anda lakukan adalah menambahkannya ke (akhir) /etc/manpath.config:

MANDATORY_MANPATH        /usr/local/myproject/man
Michel
sumber
0

x:y:z:$PATHatau $PATH:x:y:z?

Sangat berbeda. $PATHberisi :daftar tempat-tempat yang terpisah di mana bash (shell / terminal) harus memeriksa suatu program.

Sebagai contoh jika Anda mengetik catcara terminal memahami apa artinya untuk melihat melalui elemen pertama, kedua, ketiga $PATH, maka simpan lokasi pertama yang ditemukannya untuk pemanggilan selanjutnya cat.

Jika saya memiliki dua versi program yang berbeda di dua tempat berbeda, dengan salah satu di antaranya lebih disukai, dan $PATHmemberi tahu shell untuk mencari dalam urutan yang salah, maka ada masalah. Kalau tidak, tidak masalah.


ekspor

Buka terminal dan ketik

echo $a
a=5
echo a
echo $a

Anda akan melihat bahwa a=5mengatur nilai variabel dan $amerujuk ke nama variabel, bukan nilai.

Buka terminal kedua dan ketik echo $a. Lagi-lagi harus kosong.

Perbedaan antara exportdan penugasan ( =) dijelaskan di sini: /programming/1158091/defining-a-variable-with-or-without-export .

isomorfisma
sumber