Có hai kịch bản:
- Bạn đang sử dụng Linux
- Bạn đang sử dụng Mac Os X
Đối với cả hai bạn muốn nguồn ~/.bashrc
trong hồ sơ của bạn được tải, hoặc có nguồn gốc, khi vỏ của bạn cho thiết bị đầu cuối của bạn bắt đầu.
LINUX
Trong Linux, ~/.profile
là nguồn tự động trong vỏ của bạn khi nó khởi động. Vì vậy, nếu bạn đi đến thiết bị đầu cuối và gõ cd ~; ls -A
, bạn sẽ thấy tất cả các tệp và thư mục của bạn trong thư mục chính của bạn ( /home/usrname/
). Bạn sẽ thấy một tập tin gọi là .profile
. Đây là tập tin tự động "có nguồn gốc" khi bạn khởi động thiết bị đầu cuối.
Nếu bạn muốn thêm bí danh và hàm vào ~/.bashrc
(đó là những gì tôi làm), thì bạn nên (bên trong ~/.profile
thêm một câu lệnh if kiểm tra nếu ~/.bashrc
là một tệp không trống và sau đó lấy nguồn.
Để kiểm tra xem bạn ~/.profile
đã làm điều này chưa nano ~/.profile
. Điều này sẽ mở nó trong một trình soạn thảo văn bản (bạn có thể sử dụng gedit nếu bạn biết bạn có nó hoặc thậm chí là vim nếu bạn biết cách sử dụng nó). Bạn có thể nhận được một tệp văn bản trống (bạn không nên), nhưng nếu bạn chỉ cần tiến hành. Nếu bạn không thấy một dòng nào ở bất cứ nơi nào nói source ~/.bashrc
, thì hãy nhập các dòng sau vào một nơi nào đó (đặt nó ở một nơi hợp lý như ở cuối hoặc đầu và không ở giữa một câu lệnh if):
if [ -s ~/.bashrc ]; then
source ~/.bashrc;
fi
Điều này kiểm tra nếu ~/.bashrc
là một tệp không trống (với if [ -s ~/.bashrc ]
) và nếu nó là như vậy, nó sẽ nguồn nó. Khá đơn giản. Bây giờ, bạn có thể thêm bất kỳ bí danh hợp lệ, chức năng, biến, vv để ~/.bashrc
.
MAC OS X
Theo mặc định, các nguồn Max OS X ~/.bash_profile
. Để có thể thêm mọi thứ vào ~/.bashrc
(đó là, một lần nữa, những gì tôi làm trong OS X cũng vậy), sau đó bạn làm theo quy trình tương tự như linux. Trong thiết bị đầu cuối nhập cd ~; nano .bash_profile
. Kiểm tra một dòng có nội dung source ~/.bashrc
và nếu nó không có, hãy thêm câu lệnh if ở trên ( if [ -s ~/.bashrc ]; then source ~/.bashrc; fi
).
GHI CHÚ
Khi viết một câu lệnh if, hãy chắc chắn để lại khoảng trắng giữa mọi thứ về cơ bản (ví dụ: if [ -s ~/.bashrc]; then echo "found"; fi
không hoạt động vì không có khoảng trắng ~/.bashrc
và ]
- trình thông dịch sẽ nghĩ đây là một từ).
Nếu bạn muốn tìm ra cách kiểm tra nội dung trong câu lệnh if tốt hơn, hãy đi đến terminal và nhập man \[
; điều này về cơ bản mang đến cho bạn sự rút gọn của một câu lệnh if. Ví dụ, if [ -f /path/to/file ]; then echo "it's a file"; else echo "not a file"; fi
kiểm tra nếu /path/to/file
là một tệp và nếu nó được in ra thiết bị xuất chuẩn tương ứng. Tôi luôn luôn tham khảo điều này để dễ nhìn hơn và tham khảo nhanh: 7.2. Toán tử kiểm tra tập tin .
Tôi hi vọng cái này giúp được. Tôi nhớ tôi đã bối rối như thế nào khi tôi bắt đầu tất cả những thứ này (mà cách đây không lâu); vì vậy, chúc may mắn với những nỗ lực tương lai UNIX của bạn!