Unix / Linux - Môi trường
Chào mừng các bạn đang học lập trình! Hôm nay, chúng ta sẽ cùng khám phá thế giới thú vị của các môi trường Unix và Linux. Là một giáo viên máy tính gần gũi, tôi sẽ dẫn dắt các bạn trong hành trình này với những giải thích rõ ràng, nhiều ví dụ và một chút hài hước. Hãy bắt đầu nào!
Tệp .profile
Hãy tưởng tượng bạn đang chuyển vào một ngôi nhà mới. Bạn sẽ muốn thiết lập mọi thứ theo ý mình, phải không? Trong Unix và Linux, tệp .profile
giống như hướng dẫn cá nhân cho setup ngôi nhà của bạn. Đây là một tệp ẩn (đó là ý nghĩa của dấu chấm) trong thư mục home của bạn và nó sẽ được đọc mỗi khi bạn đăng nhập.
Dưới đây là một ví dụ đơn giản về tệp .profile
:
# Đặt trình chỉnh sửa mặc định
EDITOR=nano
# Đặt đường dẫn mặc định
PATH=$PATH:/home/username/bin
# Đặt một prompt tùy chỉnh
PS1="[\u@\h \W]\$ "
# Đặt một alias cho một lệnh phổ biến
alias ll='ls -la'
Hãy phân tích này:
- Chúng ta đang đặt trình chỉnh sửa văn bản mặc định là
nano
. - Chúng ta đang thêm một thư mục tùy chỉnh vào PATH (sẽ giải thích thêm sau).
- Chúng ta đang đặt một prompt tùy chỉnh (sẽ thảo luận sau).
- Chúng ta đang tạo một phím tắt (alias) cho một lệnh phổ biến.
Lưu ý, các thay đổi trong .profile
chỉ có hiệu lực khi bạn đăng nhập hoặc nguồn tệp thủ công với source ~/.profile
.
Đặt Loại Terminal
Bạn có từng thử xem phim 4K trên một chiếc TV cũ không? Nó không hoạt động tốt, phải không? Tương tự, terminal của bạn cần biết nó là loại nào để hiển thị các thứ chính xác. Biến môi trường TERM
thực hiện công việc này.
export TERM=xterm-256color
Dòng này告诉 hệ thống rằng terminal của bạn hỗ trợ 256 màu. Nó giống như nâng cấp TV của bạn để xử lý nội dung độ phân giải cao!
Đặt PATH
PATH giống như một bản đồ kho báu cho máy tính của bạn. Nó告诉 hệ thống nơi tìm kiếm các tệp thực thi. Giả sử bạn có một số script tùy chỉnh trong /home/username/scripts
. Bạn sẽ muốn thêm này vào PATH:
export PATH=$PATH:/home/username/scripts
Bây giờ, bạn có thể chạy các script của mình từ bất kỳ đâu mà không cần chỉ định đường dẫn đầy đủ. Nó giống như thêm một địa điểm mới vào bản đồ kho báu của bạn!
Biến PS1 và PS2
PS1 và PS2 giống như những người chủ của buổi tiệc terminal. PS1 là người chủ chính (prompt chính của bạn), trong khi PS2 là người đồng chủ (prompt thứ hai cho các lệnh nhiều dòng).
Dưới đây là một setup PS1 sang trọng:
export PS1="\[\033[38;5;11m\]\u\[$(tput sgr0)\]\[\033[38;5;15m\]@\h:\[$(tput sgr0)\]\[\033[38;5;6m\][\w]:\[$(tput sgr0)\]\[\033[38;5;15m\] \\$ \[$(tput sgr0)\]"
Điều này tạo ra một prompt màu sắc hiển thị tên người dùng, tên máy chủ và thư mục hiện tại. Nó giống như cho terminal của bạn một cuộc cải trang thời trang!
Đối với PS2, chúng ta có thể giữ nó đơn giản:
export PS2="> "
Điều này chỉ hiển thị một >
cho các dòng tiếp tục, như một lời nhắc "hãy tiếp tục, chúng tôi đang lắng nghe" từ terminal của bạn.
Biến Môi trường
Biến môi trường giống như không khí chúng ta thở trong thế giới Unix/Linux - chúng ở khắp mọi nơi và ảnh hưởng đến mọi thứ! Dưới đây là bảng một số biến môi trường phổ biến:
Biến | Mô tả | Ví dụ |
---|---|---|
HOME | Thư mục home của bạn | /home/username |
USER | Tên người dùng của bạn | johndoe |
SHELL | Shell mặc định của bạn | /bin/bash |
LANG | Ngôn ngữ và locale của bạn | en_US.UTF-8 |
PWD | Thư mục làm việc hiện tại của bạn | /home/username/documents |
Bạn có thể đặt các biến này như sau:
export LANG=en_US.UTF-8
Và xem chúng như sau:
echo $LANG
Đây là một mẹo vui: thử chạy env
trong terminal của bạn. Nó giống như mở một cửa sổ vào linh hồn của máy tính của bạn!
Lưu ý, các biến môi trường phân biệt chữ hoa và thường. $HOME và $home không phải là cùng một thứ!
Cuối cùng, việc hiểu và tùy chỉnh môi trường Unix/Linux giống như trang trí ngôi nhà kỹ thuật số của bạn. Nó làm cho trải nghiệm máy tính của bạn hiệu quả và thú vị hơn. Khi bạn tiếp tục hành trình lập trình, bạn sẽ thấy mình thay đổi các thiết lập này để phù hợp với nhu cầu của mình tốt hơn.
Tôi hy vọng hướng dẫn này đã chiếu sáng con đường qua môi trường Unix/Linux cho bạn. Nhớ rằng, mỗi chuyên gia từng là một người mới bắt đầu, vì vậy đừng害怕 thử nghiệm và mắc lỗi. Đó là cách chúng ta học! Hãy tiếp tục khám phá, tiếp tục lập trình và quan trọng nhất, hãy vui vẻ!
Credits: Image by storyset