Hàm do người dùng xác định
Thông thường các hàm bash được lưu trữ vĩnh viễn trong bash
tập lệnh khởi động.
- Các kịch bản khởi động trên toàn hệ thống:
/etc/profile
cho các shell đăng nhập và /etc/bashrc
cho các shell tương tác.
- Người dùng xác định các tập lệnh khởi động:
~/.bash_profile
cho các shell đăng nhập và ~/.bashrc
cho các shell tương tác.
- Thông tin thêm về shell tương tác / đăng nhập có thể được tìm thấy trong
man
trang bash trong phần HÓA ĐƠN.
Các hàm shell do người dùng xác định được tải động trong hàm băm (hoặc bảng tra cứu) khi bash bắt đầu. Từ tệp nguồn bash variable.c
, định nghĩa cho bảng là:
/* The list of shell functions that the user has created, or that came from
the environment. */
HASH_TABLE *shell_functions = (HASH_TABLE *)NULL;
Các hàm do người dùng xác định có thể được liệt kê bằng declare
lệnh bash , các shell khác vẫn sử dụng typeset
. Trong bash declare
đã áp đặt typeset
lệnh.
declare -f
Các hàm tồn tại trong bộ nhớ suốt đời của bash shell.
Các hàm được định nghĩa (dựng sẵn) của Shell
Đây là những chức năng thông thường như echo
, printf
, cd
và :
. Chúng được biên dịch vào một thư viện được liên kết thành bash
tệp thực thi. Xây dựng các định nghĩa vào thực thi giúp tiết kiệm thời gian so với tải một định nghĩa bên ngoài. Các định nghĩa cho các hàm này (được giữ trong .def
các tệp nguồn được phân tích cú pháp thành nguồn C) được giữ trong builtins
thư mục của nguồn bash.
Một bên hữu ích: để biết thông tin về việc sử dụng lệnh dựng sẵn shell help <command>
. ví dụ
help # list all builtins
help declare # info and options for declare
help -m declare # gives man style information for declare
cd is a shell builtin
. Hãy xem trang người đàn ông cho vỏ của bạn (zsh?)