Hiện tại nó là:
michael@Castle2012-Ubuntu-laptop01:~/Dropnot/webs/rails_v3/linker/spec/controllers$
Ngoài việc đổi tên cấu trúc máy và thư mục của tôi ...
Làm thế nào tôi có thể làm cho nó là một cái gì đó giống như:
michael:controllers$
Hiện tại nó là:
michael@Castle2012-Ubuntu-laptop01:~/Dropnot/webs/rails_v3/linker/spec/controllers$
Ngoài việc đổi tên cấu trúc máy và thư mục của tôi ...
Làm thế nào tôi có thể làm cho nó là một cái gì đó giống như:
michael:controllers$
Câu trả lời:
Chỉ cần nhập PS1='\u:\W\$ '
và nhấn enter.
Trong của bạn ~/.bashrc
, tìm phần sau:
if ["$ color_prompt" = có]; sau đó PS1 = '$ {debian_chroot: + ($ debian_chroot)} \ [\ 033 [01; 32m \] \ u @ \ h \ [\ 033 [00m \]: \ [\ 033 [01; 34m \] \ w \ [\ 033 [00m \] \ $ ' khác PS1 = '$ {debian_chroot: + ($ debian_chroot)} \ u @ \ h: \ w \ $' fi
Xóa @\h
và thay thế \w
bằng chữ hoa \W
để nó trở thành:
if ["$ color_prompt" = có]; sau đó PS1 = '$ {debian_chroot: + ($ debian_chroot)} \ [\ 033 [01; 32m \] \ u \ [\ 033 [00m \]: \ [\ 033 [01; 34m \] \ W \ [\ 033 [00m \] \ $ ' khác PS1 = '$ {debian_chroot: + ($ debian_chroot)} \ u: \ W \ $' fi
Lưu, thoát, đóng terminal và bắt đầu cái khác để xem kết quả.
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\]>'
Chạy mã này trong thiết bị đầu cuối hiện tại
PROMPT_DIRTRIM=3
Bây giờ dấu nhắc bash sẽ chỉ hiển thị 3 tên thư mục cuối cùng. Bạn có thể chọn 1 để chỉ hiển thị thư mục hiện tại. Thêm thông tin có sẵn trong tài liệu GNU .
Tác dụng:
/var/lib/apt/lists# PROMPT_DIRTRIM=3
/.../lib/apt/lists#
Nếu bạn muốn làm cho nó vĩnh viễn, hãy thêm dòng sau ~/.bashrc
vào đầu:
PROMPT_DIRTRIM=3
hoặc một số khác lớn hơn 0.
promptdir() { PROMPT_DIRTRIM=$1; }
chỉ để làm cho cuộc sống dễ dàng hơn ...
Đây là cài đặt nhắc nhở ưa thích của tôi:
thêm vào ~/.bashrc
PS1='[\u@\h \W]\$ '
nó trông như thế này:
[user@hostname dirname]$
(có một khoảng trắng sau $
dấu hiệu)
Cá nhân tôi chỉ muốn xem thư mục hiện tại trong dấu nhắc bash. Tôi có thể làm điều này với lệnh sau:
PS1='\W\$ '
Nếu bạn muốn nó có hiệu lực sau mỗi lần khởi động thì hãy thêm lệnh trên vào ~ / .bashrc của bạn.
Tôi nhận ra điều này là siêu cũ nhưng vì không ai đề nghị tạo bí danh nên tôi nghĩ rằng tôi đã đăng. Sử dụng Bash Prompt Escape Sequences Tôi đã tạo một bí danhshorten
Ở ~/.bash_aliases
đây bạn sẽ thấy var $ Blue để đặt màu nhắc mà bạn có thể bỏ qua hoặc thay đổi dựa trên tùy chọn Tôi cũng xóa thiết bị đầu cuối khi gọi rút ngắn.
alias c='clear'
alias shorten='PS1="$Blue$USER:\W$ "&& c'
Để đạt được chuỗi nhắc nhở mong muốn của OP:
alias shorten='PS1="$USER:\W$ "'
Tôi có các màu được xác định trong ~/.bashrc
bản sao và dán từ https://wiki.archlinux.org/index.php/Color_Bash_Prompt . Một mặt lưu ý những gì với màu mã ansi? Tôi bối rối chỉ nhìn vào nó.
Blue='\e[0;34m' # Blue
Tôi đã viết một chức năng bạn có thể sửa đổi cho phù hợp với nhu cầu của bạn:
function termprompt() {
PS1="${PS1//@\\h/}" # Remove @host
PS1="${PS1//\\w/\\W}" # Change from full directory to last name
}
Đặt hàm này ở hoặc gần cuối của dòng ~/.bashrc
sau khi PS1
dòng được tính toán đầy đủ.
Bạn sẽ gõ termprompt
bất cứ khi nào bạn muốn rút ngắn lời nhắc của bạn hoặc, đã termprompt
gọi từ dưới cùng của bạn ~/.bashrc
để được vĩnh viễn.
Ưu điểm của kỹ thuật này so với nhiều câu trả lời khác là .bashrc
có thể thiết lập PS1
theo bốn cách khác nhau (xterm + no-color, xterm + color, no-xterm + no-color, no-xterm + color). Câu trả lời này hỗ trợ tất cả bốn phương pháp hiện tại và có thể cả các phương pháp trong tương lai.
Một ưu điểm khác là phương pháp này có các mã điều khiển ít phức tạp hơn để duyệt qua để chèn các thay đổi của bạn.