Saya tidak dapat menemukan .bash_profiledi Ubuntu 14.04 di /home/userdirektori saya . Saya menggunakan ls -aperintah untuk melihat .bash_profile, tetapi tidak ada file seperti itu.
Saya tidak dapat menemukan .bash_profiledi Ubuntu 14.04 di /home/userdirektori saya . Saya menggunakan ls -aperintah untuk melihat .bash_profile, tetapi tidak ada file seperti itu.
Jawaban:
Ubuntu menggunakan ~/.profile.
Anda dapat membuatnya .bash_profiledi Ubuntu tetapi .profiletidak akan dibaca.
Jika kita membaca konten profil.:
cat ~/.profile
# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
Jadi gunakan ~/.profilesaja~/.bash_profile
vim ~/.bashrclalu. ~/.bashrc
Saat menjalankan bash shell login akan mencari file konfigurasi dalam urutan ini:
[0] ~/.bash_profile
[1] ~/.bash_login
[2] ~/.profile
Setelah menemukan yang pertama, ia berhenti mencari yang lain sehingga jika ada .bash_profiledi $HOMEbash saya tidak akan mencari .bash_logindan .profilelagi.
Dari ketiga nama file ini, Ubuntu secara default menggunakan .profileAnda dapat mengubah nama menjadi .bash_profilejika Anda suka:
mv ~/.profile ~/.bash_profile
Sekarang jika kita membuka shell bash baru menggunakan bash -l, su - $USER, sudo -u $USER -iatau perintah lain yang berjalan pesta sebagai shell login, ~/.bash_profileakan mendapatkan bersumber.
Apa yang saya bicarakan sampai sekarang hanya berlaku untuk Bash sendiri, ketika Anda masuk ke sistem dari GUI, manajer tampilan bertanggung jawab atas sumber file yang benar.
Ubuntu menggunakan gdm3sebagai pengelola tampilan, jika kita melihat: /etc/gdm3/Xsessionkita dapat melihat bahwa tidak ada file yang akan bersumber kecuali .profile::
# First read /etc/profile and .profile
for file in /etc/profile "$HOME/.profile"; do
if [ -f "$file" ]; then
source_with_error_check "$file"
fi
done
jadi jika Anda menggunakan GUI untuk masuk, simpan file dengan .profilenama lain jika tidak, Anda mungkin kehilangan beberapa variabel dan pengaturan di lingkungan Anda.
Saya kira opsi yang lebih baik adalah membuat symlink ke .profile:
ln -s ~/.profile ~/.bash_profile
Sekarang data Anda tinggal .profile, gdmtidak ketinggalan apa pun, bash load .bash_profileyang sebenarnya .profile, dan dengan mengedit masing-masing Anda mendapatkan hasil yang sama.
Jika Anda belum memilikinya, .profileambil salinannya dari sini:
cp /etc/skel/.profile ~/.profile
atau
# Remember the note above
cp /etc/skel/.profile ~/.bash_profile
man bashdi Ubuntu masih menjelaskan bagaimana ia akan mencari .bash_profile terlebih dahulu.
.bash_profile pertama tidak dapat menemukannya (karena tidak ada) kemudian mencari .bash_logintidak dapat menemukannya lagi (karena Ubuntu tidak menggunakan dua nama ini) akhirnya mencari .profiledan ya itu ada. Jadi jika Anda membuat .bash_profilein ~maka Anda menimpa ubuntu ~/.profile, itu adalah perilaku default bash, tidak ada yang diubah di sini.
.bash_profile, itu tidak dibaca. Saya baru menyadari bahwa ini karena Ubuntu tidak lagi menggunakan 'Bash' sebagai shell login GUI. Ini menggunakan 'Dash' sebagai gantinya. Saya pikir ini sudah benar sejak sekitar 18,04.
Itu berarti file tersebut tidak ada. Tapi, Anda bisa membuat file dan bashmengeksekusi / sumber file jika bashdipanggil sebagai shell login. Jadi, sesaat Anda login melalui shell (misalnya via ssh).
Jika Anda ingin konten dieksekusi setiap kali Anda membuka terminal, maka Anda harus memodifikasi .bashrcfile.
/etc/skel/direktori.
.bash_profiletidak ada (dan tidak berfungsi) di Ubuntu dalam komentar pada jawaban lain.
Jawaban teratas untuk digunakan ~/.profilebukannya ~/.bash_profiletidak berfungsi untuk saya.
Memodifikasi .bashrcberhasil
Hanya:
vim ~/.bashrc
Catatan: Saya menggunakan Ubuntu WSL.
~/.profiletidak dimuat secara default di ubuntu 18.04
Jika Anda maksud .bashrc Anda akan menemukannya di folder rumah Anda. Jika tidak ada, Anda dapat menyalinnya dari folder / etc / skel ke folder home Anda.
Jika Anda memerlukan informasi lebih lanjut tentang hal ini, silakan kunjungi halaman stefaan lippens.
~/.profilesebagai gantinya.