source Trình tạo lệnh
Thực thi một script trong shell hiện tại (source file [args])
Bắt đầu với mã nguồn
## Nguồn truy cập là gì?
Lệnh `source` (cũng được viết là `.`) sẽ đọc và thực thi một script **trong shell hiện tại** thay vì trong một subshell. Điều này có nghĩa là bất kỳ biến, hàm hay alias nào được định nghĩa trong script vẫn còn hiệu lực sau khi script kết thúc. Đây là cách tiêu chuẩn để tải lại cấu hình shell và các tệp thiết lập môi trường.
## Cách sử dụng
1. **Chọn tệp**: Nhập đường dẫn đến script (ví dụ: `~/.bashrc`, `./setup.sh`). 2. **Thêm đối số** (tùy chọn): Gửi các đối số mà script yêu cầu (ví dụ: `arg1 arg2`). 3. **Sao chép và chạy**: Dán lệnh được tạo ra vào terminal của bạn. Các thay đổi sẽ có hiệu lực ngay lập tức trong shell hiện tại.
Các tùy chọn phổ biến
### Đối số tệp theo vị trí
`source` nhận đường dẫn tập lệnh làm đối số đầu tiên: `source ~/.bashrc`.
### Các đối số theo vị trí
Các token còn lại sẽ trở thành `$1`, `$2`, ... bên trong tập lệnh: `source ./setup.sh dev` giúp làm cho `$1=dev` có thể được sử dụng trong `setup.sh`.
### Từ đồng nghĩa `.`
Trong các shell POSIX, `.` chính là lệnh tương ứng: `. ~/.bashrc` giống hệt `source ~/.bashrc`. Hãy sử dụng `source` trong Bash/Zsh để tăng tính dễ đọc; hãy sử dụng `.` để đảm bảo tính tương thích.
▶Sự khác biệt giữa việc sử dụng mã nguồn và việc chạy script trực tiếp là gì?
▶Tại sao \`source .env\` không tự động tải các biến của tôi vào môi trường?
▶Làm thế nào để tải lại cấu hình shell sau khi chỉnh sửa ~/.bashrc?
Nếu công cụ này đã giúp ích cho bạn, hãy nghĩ đến việc mua một cốc cà phê cho tôi.
Hãy mua cho tôi một cốc cà phê nhé.