Untuk mengubahnya hanya untuk instance terminal saat ini
Cukup masukkan PS1='\u:\W\$ 'dan tekan enter.
Untuk mengubahnya "secara permanen"
Di Anda ~/.bashrc, temukan bagian berikut:
jika ["$ color_prompt" = ya]; kemudian
PS1 = '$ {debian_chroot: + ($ debian_chroot)} \ [\ 033 [01; 32m \] \ u @ \ h \ [\ 033 [00m \]: \ [\ 033 [01; 34m \] \ w \ [\ 033 [00m \] \ $ '
lain
PS1 = '$ {debian_chroot: + ($ debian_chroot)} \ u @ \ h: \ w \ $'
fi
Hapus @\h, dan ganti \wdengan huruf besar \W, sehingga menjadi:
jika ["$ color_prompt" = ya]; kemudian
PS1 = '$ {debian_chroot: + ($ debian_chroot)} \ [\ 033 [01; 32m \] \ u \ [\ 033 [00m \]: \ [\ 033 [01; 34m \] \ W \ [\ 033 [00m \] \ $ '
lain
PS1 = '$ {debian_chroot: + ($ debian_chroot)} \ u: \ W \ $'
fi
Simpan, keluar, tutup terminal dan mulai yang lain untuk melihat hasilnya.
Banyak lagi opsi!
Lihat di sini untuk howto yang lebih luas, dengan lebih banyak opsi
Lihat jawaban ini untuk menggunakan skrip Python kecil untuk mengatur prompt sehingga pemendekan hanya terjadi ketika Anda jauh di dalam struktur direktori.
Apakah ada cara untuk menjadikan ini global? Dengan kata lain, jika saya sudo ke pengguna lain, apakah pengaturan ini terbawa, tetapi hanya untuk diri saya sendiri (yaitu, bukan untuk pengguna saat mereka biasanya menggunakan akun mereka)?
tetapi lihat jawaban untuk kode aktual yang digunakan.
Michael Durrant
104
Jalankan kode ini di terminal saat ini
PROMPT_DIRTRIM=3
Sekarang bash prompt hanya akan menampilkan 3 nama direktori terakhir. Anda dapat memilih 1 untuk hanya menampilkan direktori saat ini. Informasi lebih lanjut tersedia di dokumentasi GNU .
Saya menyadari ini super tua tetapi karena tidak ada yang menyarankan membuat alias saya pikir saya akan memposting. Menggunakan Bash Prompt Escape Sequences, saya membuat aliasshorten
Di ~/.bash_aliasessini Anda akan melihat $ Blue var untuk mengatur warna prompt yang dapat Anda hilangkan atau ubah berdasarkan preferensi. Saya juga menghapus terminal saat pemanggilan yang singkat.
alias c='clear'
alias shorten='PS1="$Blue$USER:\W$ "&& c'
Untuk mencapai string prompt yang diinginkan OP:
alias shorten='PS1="$USER:\W$ "'
Saya memiliki warna yang ditentukan dalam ~/.bashrcsalinan dan disisipkan dari https://wiki.archlinux.org/index.php/Color_Bash_Prompt . Di samping catatan ada apa dengan warna kode ansi? Saya bingung hanya melihatnya.
Panduan langkah demi langkah untuk ini akan sangat berguna karena saya tidak tahu bagaimana menuju .bash_aliases. Terima kasih
Kayote
2
"." awalan menunjukkan direktori atau file tersembunyi. The tilde "~" adalah bentuk pendek dari variabel $ HOME. Jadi, "~ / .bash_aliases" hanyalah bentuk singkat dari "/home/$USER/.bash_aliases". Untuk membuka ".bash_aliases" Anda dapat membuka terminal dan mengetik "gedit /home/$USER/.bash_aliases" atau "gedit ~ / .bash_aliases" atau di direktori home Anda ketik ctrl-h untuk menampilkan file tersembunyi dan buka file secara langsung . Semoga itu bisa membantu. Anda mungkin ingin melakukan pencarian Google untuk alias yang berguna juga.
function termprompt(){
PS1="${PS1//@\\h/}"# Remove @host
PS1="${PS1//\\w/\\W}"# Change from full directory to last name}
Tempatkan fungsi ini di atau dekat bagian bawah ~/.bashrcsetelah PS1garis telah sepenuhnya dihitung.
Anda akan mengetik termpromptsetiap kali Anda ingin mempersingkat prompt Anda atau, telah termpromptmemanggil dari bawah Anda ~/.bashrcuntuk keabadian.
Keuntungan dari teknik ini dibandingkan banyak jawaban lain adalah .bashrcdapat mengatur PS1dalam empat cara yang berbeda (xterm + no-color, xterm + color, no-xterm + no-color, no-xterm + color). Jawaban ini mendukung keempat metode saat ini dan mungkin metode yang akan datang juga.
Keuntungan lain adalah metode ini memiliki kode kontrol yang tidak terlalu rumit untuk dilalui untuk memasukkan perubahan Anda.
Jawaban:
Untuk mengubahnya hanya untuk instance terminal saat ini
Cukup masukkan
PS1='\u:\W\$ '
dan tekan enter.Untuk mengubahnya "secara permanen"
Di Anda
~/.bashrc
, temukan bagian berikut:Hapus
@\h
, dan ganti\w
dengan huruf besar\W
, sehingga menjadi:Simpan, keluar, tutup terminal dan mulai yang lain untuk melihat hasilnya.
Banyak lagi opsi!
sumber
HOST='\033[02;36m\]\h' HOST=' '$HOST parse_git_branch () { git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/'; } TIME='\033[01;31m\]\t \033[01;32m\]' LOCATION=' \033[01;34m\]
pwd | sed "s # (/ [^ /] \ {1, \} / [^ /] \ {1, \} / [^ /] \ {1, \} /). * (/ [^ /] \ { 1, \} / [^ /] \ {1, \}) / \ {0,1 \} # \ 1_ \ 2 # g "' BRANCH=' \033[00;33m\]$(parse_git_branch)\[\033[00m\]\n\$ ' PS1=$TIME$USER$HOST$LOCATION$BRANCH PS2='\[\033[01;36m\]>'
Jalankan kode ini di terminal saat ini
Sekarang bash prompt hanya akan menampilkan 3 nama direktori terakhir. Anda dapat memilih 1 untuk hanya menampilkan direktori saat ini. Informasi lebih lanjut tersedia di dokumentasi GNU .
Efeknya:
Jika Anda ingin membuatnya secara permanen, tambahkan baris berikut
~/.bashrc
di awal:atau nomor lain yang lebih besar dari nol.
sumber
promptdir() { PROMPT_DIRTRIM=$1; }
hanya untuk membuat hidup lebih mudah ...Ini adalah pengaturan prompt yang saya sukai:
ditambahkan
~/.bashrc
terlihat seperti ini:
(dengan spasi setelah
$
tanda)sumber
Secara pribadi saya lebih suka melihat folder saat ini saja di bash prompt. Saya bisa melakukan ini dengan perintah berikut:
Jika Anda ingin mulai berlaku setelah setiap mulai, tambahkan perintah di atas ke ~ / .bashrc Anda.
sumber
Saya menyadari ini super tua tetapi karena tidak ada yang menyarankan membuat alias saya pikir saya akan memposting. Menggunakan Bash Prompt Escape Sequences, saya membuat alias
shorten
Di
~/.bash_aliases
sini Anda akan melihat $ Blue var untuk mengatur warna prompt yang dapat Anda hilangkan atau ubah berdasarkan preferensi. Saya juga menghapus terminal saat pemanggilan yang singkat.Untuk mencapai string prompt yang diinginkan OP:
Saya memiliki warna yang ditentukan dalam
~/.bashrc
salinan dan disisipkan dari https://wiki.archlinux.org/index.php/Color_Bash_Prompt . Di samping catatan ada apa dengan warna kode ansi? Saya bingung hanya melihatnya.sumber
Saya menulis sebuah fungsi yang dapat Anda modifikasi sesuai dengan kebutuhan Anda:
Tempatkan fungsi ini di atau dekat bagian bawah
~/.bashrc
setelahPS1
garis telah sepenuhnya dihitung.Anda akan mengetik
termprompt
setiap kali Anda ingin mempersingkat prompt Anda atau, telahtermprompt
memanggil dari bawah Anda~/.bashrc
untuk keabadian.Keuntungan dari teknik ini dibandingkan banyak jawaban lain adalah
.bashrc
dapat mengaturPS1
dalam empat cara yang berbeda (xterm + no-color, xterm + color, no-xterm + no-color, no-xterm + color). Jawaban ini mendukung keempat metode saat ini dan mungkin metode yang akan datang juga.Keuntungan lain adalah metode ini memiliki kode kontrol yang tidak terlalu rumit untuk dilalui untuk memasukkan perubahan Anda.
sumber