Làm cách nào tôi có thể liệt kê và chỉnh sửa tất cả các bí danh đã xác định trong Terminal?


93

Một người bạn sở hữu máy Mac hiện tại của tôi trước tôi đã tạo ra rất nhiều lệnh bí danh. Có cách nào để liệt kê tất cả các bí danh đã xác định và lệnh được liên kết với chúng không?

Và nếu vậy, tôi có thể chỉnh sửa chúng hay tôi chỉ nên loại bỏ chúng bằng cách sử dụng unalias và tạo lại chúng?

Câu trả lời:


105

Tất cả bạn cần làm là gõ aliastại dấu nhắc và bất kỳ bí danh hoạt động sẽ được liệt kê.

Các bí danh thường được tải khi khởi tạo trình bao của bạn, vì vậy hãy tìm trong .bash_profilehoặc .bashrctrong thư mục chính của bạn.

unaliassẽ chỉ làm việc cho phiên hiện tại của bạn. Trừ khi bạn tìm thấy nơi nó được xác định và tải, nó sẽ được tải lại khi bạn bắt đầu một phiên Terminal mới.

~/.bashrcđược chạy cho cả shell đăng nhập và không đăng nhập, ~/.bash_profilechỉ được chạy cho shell đăng nhập.

Xem vỏ đăng nhập và vỏ không đăng nhập

Theo nhận xét từ Chris Page:

Bạn nên đặt hầu hết các tùy chỉnh của mình (bao gồm cả bí danh) ~/.bashrcvà đã ~/.bash_profilechạy ~/.bashrc, để chúng áp dụng cho cả vỏ đăng nhập (~/.bash_profile)và không đăng nhập (~/.bashrc). Ngoài ra, quyết định cái nào trong số này là "chính" và nếu hồ sơ là lựa chọn của bạn, hãy giải quyết tập tin RC ở cuối. Nếu tệp RC là chính, nguồn đó ở đầu hồ sơ của bạn

Những dòng này phải có trong tệp ~/.bash_profile:

if [ -f "$HOME/.bashrc" ] ; then
  source $HOME/.bashrc
fi

Điều này sẽ bao gồm ~/.bashrccác shell đăng nhập và theo thứ tự bạn muốn nếu một tệp phụ thuộc vào tệp kia dựa trên những gì bạn đang đặt.


1
Tôi khuyên bạn nên đặt hầu hết các tùy chỉnh của mình vào các vỏ ~ / .bashrc và có ~ / .bash_profile ~ / .bashrc, để chúng áp dụng cho cả shell (~ / .bash_profile) và shell không đăng nhập (~ / .bashrc). ví dụ: đặt cái này vào ~ / .bash_profile:if [ -f "$HOME"/.bashrc ]; then . "$HOME"/.bashrc fi
Chris Trang

9

Bạn nên xem qua các tệp này:

/etc/profile
~/.profile
~/.bash_profile
~/.bashrc

Chúng là các tệp khởi động hợp lý cho trình bao của bạn (mà tôi giả sử là bash).


".Bashrc" là tên chính xác của tệp.
Chris Trang

Bạn nói đúng, tôi không hiểu tại sao tôi lại viết nó như thế.
Cedric H.

Tôi sẽ chỉ chỉnh sửa nó mà không cần bình luận, nhưng StackExchange sẽ không cho phép tôi chỉnh sửa một ký tự.
Chris Trang

Đồng thời kiểm tra toàn hệ thống / etc / bashrc
EmmEff

Đừng quên tất cả các tệp có nguồn gốc bằng cách sử dụng nguồn hoặc. (chấm) trong các tập tin này.
ManuelSchneid3r
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.