Một vài biến được sử dụng bởi Bash được mô tả trong các chương khác nhau. các biến để kiểm soát các cơ sở kiểm soát công việc [xem]
_
[$_, dấu gạch dưới. ] Khi khởi động trình bao, hãy đặt thành tên đường dẫn được sử dụng để gọi trình bao hoặc tập lệnh trình bao đang được thực thi như được truyền trong môi trường hoặc danh sách đối số. Sau đó, mở rộng đến đối số cuối cùng cho lệnh đơn giản trước đó được thực hiện ở phía trước, sau khi mở rộng. Cũng được đặt thành tên đường dẫn đầy đủ được sử dụng để gọi từng lệnh được thực thi và được đặt trong môi trường được xuất cho lệnh đó. Khi kiểm tra thư, tham số này giữ tên của tệp thư
BASH
Tên đường dẫn đầy đủ được sử dụng để thực thi phiên bản hiện tại của Bash
BASHOPTS
Một danh sách các tùy chọn trình bao đã bật được phân tách bằng dấu hai chấm. Mỗi từ trong danh sách là một đối số hợp lệ cho tùy chọn -s của lệnh dựng sẵn shopt
[xem ]. Các tùy chọn xuất hiện trong BASHOPTS
là những tùy chọn được báo cáo là 'bật' bởi 'shopt'. Nếu biến này ở trong môi trường khi Bash khởi động, mỗi tùy chọn trình bao trong danh sách sẽ được bật trước khi đọc bất kỳ tệp khởi động nào. Biến này là chỉ đọc
BASHPID
Mở rộng đến ID quy trình của quy trình Bash hiện tại. Điều này khác với $$
trong một số trường hợp nhất định, chẳng hạn như các lớp con không yêu cầu khởi tạo lại Bash. Việc gán cho BASHPID
không có hiệu lực. Nếu BASHPID
không được đặt, nó sẽ mất các thuộc tính đặc biệt của nó, ngay cả khi nó được đặt lại sau đó
_
0Một biến mảng kết hợp có các thành viên tương ứng với danh sách bí danh bên trong như được duy trì bởi nội trang _
1. [xem ]. Các phần tử được thêm vào mảng này xuất hiện trong danh sách bí danh; . Nếu không đặt _
0, nó sẽ mất các thuộc tính đặc biệt, ngay cả khi sau đó được đặt lại
_
3Một biến mảng có giá trị là số tham số trong mỗi khung của ngăn xếp cuộc gọi thực thi bash hiện tại. Số tham số của chương trình con hiện tại [hàm shell hoặc tập lệnh được thực thi với _
4 hoặc _
5] nằm ở đầu ngăn xếp. Khi một chương trình con được thực thi, số lượng tham số được truyền vào sẽ được đẩy lên _
3. Shell chỉ đặt _
3 khi ở chế độ gỡ lỗi mở rộng [xem mô tả về tùy chọn _
8 cho nội dung dựng sẵn shopt
]. Đặt _
8 sau khi trình bao bắt đầu thực thi tập lệnh hoặc tham chiếu biến này khi không đặt _
8, có thể dẫn đến các giá trị không nhất quán
BASH
2Một biến mảng chứa tất cả các tham số trong ngăn xếp cuộc gọi thực thi bash hiện tại. Tham số cuối cùng của lệnh gọi chương trình con cuối cùng nằm ở đầu ngăn xếp; . Khi một chương trình con được thực thi, các tham số được cung cấp sẽ được đẩy lên BASH
2. Shell chỉ đặt BASH
2 khi ở chế độ gỡ lỗi mở rộng [xem mô tả về tùy chọn _
8 cho nội dung dựng sẵn shopt
]. Đặt _
8 sau khi trình bao bắt đầu thực thi tập lệnh hoặc tham chiếu biến này khi không đặt _
8, có thể dẫn đến các giá trị không nhất quán
BASH
9Khi được tham chiếu, biến này mở rộng thành tên của trình bao hoặc tập lệnh trình bao [giống hệt với BASHOPTS
0; Xem , để biết mô tả về tham số đặc biệt 0]. Việc gán cho BASH
9 khiến giá trị được gán cũng được gán cho BASHOPTS
0. Nếu BASH
9 không được đặt, nó sẽ mất các thuộc tính đặc biệt, ngay cả khi nó được đặt lại sau đó
BASHOPTS
4Một biến mảng kết hợp có các thành viên tương ứng với bảng băm bên trong của các lệnh như được duy trì bởi nội trang BASHOPTS
5 [xem phần ]. Các phần tử được thêm vào mảng này xuất hiện trong bảng băm; . Nếu BASHOPTS
4 không được đặt, nó sẽ mất các thuộc tính đặc biệt của nó, ngay cả khi nó được đặt lại sau đó
BASHOPTS
7Lệnh hiện đang được thực thi hoặc sắp được thực thi, trừ khi trình bao đang thực thi lệnh do bẫy, trong trường hợp đó, lệnh được thực thi tại thời điểm bẫy. Nếu BASHOPTS
7 không được đặt, nó sẽ mất các thuộc tính đặc biệt, ngay cả khi nó được đặt lại sau đó
BASHOPTS
9Giá trị được sử dụng để đặt mức độ tương thích của trình bao. Xem , để biết mô tả về các mức độ tương thích khác nhau và tác dụng của chúng. Giá trị có thể là một số thập phân [e. g. , 4. 2] hoặc một số nguyên [e. g. , 42] tương ứng với mức tương thích mong muốn. Nếu BASHOPTS
9 không được đặt hoặc được đặt thành chuỗi trống, mức độ tương thích được đặt thành mặc định cho phiên bản hiện tại. Nếu BASHOPTS
9 được đặt thành giá trị không phải là một trong các mức tương thích hợp lệ, trình bao sẽ in thông báo lỗi và đặt mức tương thích thành mặc định cho phiên bản hiện tại. Các giá trị hợp lệ tương ứng với các mức độ tương thích được mô tả bên dưới [xem tài liệu tham khảo]. Ví dụ: 4. 2 và 42 là các giá trị hợp lệ tương ứng với tùy chọn shopt
2 shopt
và đặt mức độ tương thích thành 42. Phiên bản hiện tại cũng là một giá trị hợp lệ
shopt
4Nếu biến này được đặt khi Bash được gọi để thực thi tập lệnh shell, thì giá trị của nó sẽ được mở rộng và được sử dụng làm tên của tệp khởi động để đọc trước khi thực thi tập lệnh. Nhìn thấy
shopt
5Đối số lệnh cho tùy chọn gọi -c
shopt
6Một biến mảng có thành viên là số dòng trong tệp nguồn trong đó mỗi thành viên tương ứng của shopt
7 được gọi. shopt
8 là số dòng trong tệp nguồn [shopt
9] trong đó BASHOPTS
0 được gọi [hoặc BASHOPTS
1 nếu được tham chiếu trong một hàm trình bao khác]. Sử dụng BASHOPTS
2 để lấy số dòng hiện tại
BASHOPTS
3Một danh sách các thư mục được phân tách bằng dấu hai chấm trong đó trình bao tìm kiếm các nội trang có thể tải động được chỉ định bởi lệnh BASHOPTS
4
BASHOPTS
5Một biến mảng có các phần tử được toán tử nhị phân ‘=~’ gán cho lệnh điều kiện BASHOPTS
6 [xem tài liệu tham khảo]. Phần tử có chỉ số 0 là phần của chuỗi khớp với toàn bộ biểu thức chính quy. Phần tử có chỉ số n là phần của chuỗi khớp với biểu thức con được đặt trong ngoặc đơn thứ n
BASHOPTS
7Một biến mảng có các thành viên là tên tệp nguồn trong đó tên hàm trình bao tương ứng trong biến mảng shopt
7 được xác định. Hàm Shell BASHOPTS
0 được định nghĩa trong tệp BASHPID
0 và được gọi từ shopt
9
BASHPID
2Được tăng thêm một trong mỗi môi trường vỏ con hoặc vỏ con khi vỏ bắt đầu thực thi trong môi trường đó. Giá trị ban đầu là 0. Nếu BASHPID
2 không được đặt, nó sẽ mất các thuộc tính đặc biệt của nó, ngay cả khi nó được đặt lại sau đó
BASHPID
4Biến mảng chỉ đọc [xem ] có thành viên nắm giữ thông tin phiên bản cho phiên bản Bash này. Các giá trị được gán cho các thành viên mảng như sau
BASHPID
5Số phiên bản chính [bản phát hành]
BASHPID
6Số phiên bản phụ [phiên bản]
BASHPID
7cấp độ bản vá
BASHPID
8Phiên bản xây dựng
BASHPID
9Tình trạng phát hành [e. g. , $$
0]
$$
1Giá trị của $$
2
$$
3Số phiên bản của phiên bản hiện tại của Bash
$$
4Nếu được đặt thành một số nguyên tương ứng với bộ mô tả tệp hợp lệ, Bash sẽ ghi đầu ra theo dõi được tạo khi 'set -x' được bật cho bộ mô tả tệp đó. Điều này cho phép tách đầu ra theo dõi khỏi các thông báo chẩn đoán và lỗi. Bộ mô tả tệp bị đóng khi $$
4 không được đặt hoặc được gán một giá trị mới. Bỏ cài đặt $$
4 hoặc gán cho nó chuỗi trống sẽ khiến đầu ra theo dõi được gửi đến lỗi tiêu chuẩn. Lưu ý rằng đặt $$
4 thành 2 [bộ mô tả tệp lỗi tiêu chuẩn] và sau đó bỏ đặt nó sẽ dẫn đến lỗi tiêu chuẩn bị đóng
$$
8Đặt số lượng giá trị trạng thái con đã thoát để shell ghi nhớ. Bash sẽ không cho phép giảm giá trị này xuống dưới mức tối thiểu bắt buộc của POSIX và có giá trị tối đa [hiện tại là 8192] mà giá trị này không được vượt quá. Giá trị tối thiểu phụ thuộc vào hệ thống
$$
9Được sử dụng bởi lệnh BASHPID
0 để xác định độ rộng của thiết bị đầu cuối khi in danh sách lựa chọn. Tự động đặt nếu tùy chọn BASHPID
1 được bật [xem ] hoặc trong trình bao tương tác khi nhận được BASHPID
2
BASHPID
3Một chỉ mục vào BASHPID
4 của từ chứa vị trí con trỏ hiện tại. Biến này chỉ khả dụng trong các hàm trình bao được gọi bởi các tiện ích hoàn thành có thể lập trình [xem tài liệu tham khảo]
BASHPID
5Dòng lệnh hiện tại. Biến này chỉ khả dụng trong các hàm trình bao và các lệnh bên ngoài được gọi bởi các tiện ích hoàn thành có thể lập trình [xem tài liệu tham khảo]
BASHPID
6Chỉ số của vị trí con trỏ hiện tại so với phần đầu của lệnh hiện tại. Nếu vị trí con trỏ hiện tại ở cuối lệnh hiện tại, giá trị của biến này bằng BASHPID
7. Biến này chỉ khả dụng trong các hàm trình bao và các lệnh bên ngoài được gọi bởi các tiện ích hoàn thành có thể lập trình [xem tài liệu tham khảo]
BASHPID
8Đặt thành một giá trị số nguyên tương ứng với loại hoàn thành đã cố gắng khiến hàm hoàn thành được gọi. TAB, để hoàn thành bình thường, '?', để liệt kê các lần hoàn thành sau các tab liên tiếp, '. ’, để liệt kê các lựa chọn thay thế khi hoàn thành một phần từ, ‘@’, để liệt kê các cách hoàn thành nếu từ không bị sửa đổi hoặc ‘%’, để hoàn thành menu. Biến này chỉ khả dụng trong các hàm trình bao và các lệnh bên ngoài được gọi bởi các tiện ích hoàn thành có thể lập trình [xem tài liệu tham khảo]
BASHPID
9Khóa [hoặc khóa cuối cùng của chuỗi khóa] được sử dụng để gọi hàm hoàn thành hiện tại
BASHPID
0Tập hợp các ký tự mà thư viện Readline coi là dấu tách từ khi thực hiện hoàn thành từ. Nếu BASHPID
0 không được đặt, nó sẽ mất các thuộc tính đặc biệt của nó, ngay cả khi nó được đặt lại sau đó
BASHPID
2Một biến mảng bao gồm các từ riêng lẻ trong dòng lệnh hiện tại. Dòng được chia thành các từ như Readline sẽ chia nó, sử dụng BASHPID
0 như mô tả ở trên. Biến này chỉ khả dụng trong các hàm trình bao được gọi bởi các tiện ích hoàn thành có thể lập trình [xem tài liệu tham khảo]
BASHPID
4Một biến mảng mà từ đó Bash đọc các phần hoàn thành có thể được tạo bởi hàm shell được gọi bởi cơ sở hoàn thành có thể lập trình [xem]. Mỗi phần tử mảng chứa một khả năng hoàn thành
BASHPID
5Một biến mảng được tạo để giữ các bộ mô tả tệp cho đầu ra và đầu vào cho một đồng xử lý chưa được đặt tên [xem]
BASHPID
6Một biến mảng chứa nội dung hiện tại của ngăn xếp thư mục. Các thư mục xuất hiện trong ngăn xếp theo thứ tự chúng được hiển thị bởi nội trang BASHPID
7. Việc gán cho các thành viên của biến mảng này có thể được sử dụng để sửa đổi các thư mục đã có trong ngăn xếp, nhưng các nội trang BASHPID
8 và BASHPID
9 phải được sử dụng để thêm và xóa các thư mục. Gán cho biến này sẽ không thay đổi thư mục hiện tại. Nếu không đặt BASHPID
6, nó sẽ mất các thuộc tính đặc biệt, ngay cả khi sau đó được đặt lại
_
01Nếu Bash tìm thấy biến này trong môi trường khi trình bao bắt đầu với giá trị 't', thì nó giả định rằng trình bao đang chạy trong bộ đệm trình bao Emacs và vô hiệu hóa chỉnh sửa dòng
_
02Được mở rộng và thực thi tương tự như shopt
4 [xem phần ] khi trình bao tương tác được gọi trong Chế độ POSIX [xem phần ]
Mỗi khi tham số này được tham chiếu, nó sẽ mở rộng thành số giây kể từ Unix Epoch dưới dạng giá trị dấu phẩy động với độ chi tiết micro giây [xem tài liệu về chức năng thư viện C _
04 để biết định nghĩa của Epoch]. Các bài tập cho _
05 bị bỏ qua. Nếu _
05 không được đặt, nó sẽ mất các thuộc tính đặc biệt của nó, ngay cả khi nó được đặt lại sau đó
_
07Mỗi khi tham số này được tham chiếu, nó sẽ mở rộng thành số giây kể từ Unix Epoch [xem tài liệu về hàm thư viện C _
04 để biết định nghĩa của Epoch]. Các bài tập cho _
07 bị bỏ qua. Nếu _
07 không được đặt, nó sẽ mất các thuộc tính đặc biệt của nó, ngay cả khi nó được đặt lại sau đó
_
11Id người dùng hiệu dụng bằng số của người dùng hiện tại. Biến này là chỉ đọc
Danh sách các mẫu shell được phân tách bằng dấu hai chấm [xem phần ] xác định danh sách tên tệp sẽ bị bỏ qua khi tìm kiếm lệnh bằng cách sử dụng _
12. Các tệp có tên đường dẫn đầy đủ khớp với một trong các mẫu này không được coi là tệp thực thi cho mục đích hoàn thành và thực thi lệnh thông qua tra cứu _
12. Điều này không ảnh hưởng đến hành vi của các lệnh _
14, _
15 và BASHOPTS
6. Tên đường dẫn đầy đủ trong bảng băm lệnh không tuân theo _
17. Sử dụng biến này để bỏ qua các tệp thư viện dùng chung có bit thực thi được đặt, nhưng không phải là tệp thực thi. Khớp mẫu tôn vinh cài đặt của tùy chọn trình bao _
18
_
19Trình chỉnh sửa được sử dụng làm mặc định bởi tùy chọn -e cho lệnh dựng sẵn _
20
Một danh sách các hậu tố được phân tách bằng dấu hai chấm để bỏ qua khi thực hiện hoàn thành tên tệp. Tên tệp có hậu tố khớp với một trong các mục trong _
21 bị loại khỏi danh sách tên tệp khớp. Một giá trị mẫu là '. o. ~'
shopt
7Một biến mảng chứa tên của tất cả các hàm hệ vỏ hiện có trong ngăn xếp cuộc gọi thực thi. Phần tử có chỉ số 0 là tên của bất kỳ hàm shell nào đang thực thi. Phần tử dưới cùng [phần tử có chỉ số cao nhất] là _
23. Biến này chỉ tồn tại khi hàm shell đang thực thi. Việc gán cho shopt
7 không có hiệu lực. Nếu shopt
7 không được đặt, nó sẽ mất các thuộc tính đặc biệt của nó, ngay cả khi nó được đặt lại sau đó
Biến này có thể được sử dụng với shopt
6 và BASHOPTS
7. Mỗi phần tử của shopt
7 có các phần tử tương ứng trong shopt
6 và BASHOPTS
7 để mô tả ngăn xếp cuộc gọi. Chẳng hạn, BASHOPTS
0 được gọi từ tệp shopt
9 ở dòng số shopt
8. Nội trang _
34 hiển thị ngăn xếp cuộc gọi hiện tại bằng cách sử dụng thông tin này
_
35Nếu được đặt thành một giá trị số lớn hơn 0, hãy xác định mức lồng hàm tối đa. Các lời gọi hàm vượt quá mức lồng ghép này sẽ khiến lệnh hiện tại bị hủy bỏ
Danh sách các mẫu được phân tách bằng dấu hai chấm xác định tập hợp tên tệp sẽ bị bỏ qua khi mở rộng tên tệp. Nếu tên tệp khớp với mẫu mở rộng tên tệp cũng khớp với một trong các mẫu trong _
36, thì nó sẽ bị xóa khỏi danh sách khớp. Khớp mẫu tôn vinh cài đặt của tùy chọn trình bao _
18
_
38Một biến mảng chứa danh sách các nhóm mà người dùng hiện tại là thành viên. Việc gán cho _
38 không có hiệu lực. Nếu _
38 không được đặt, nó sẽ mất các thuộc tính đặc biệt, ngay cả khi nó được đặt lại sau đó
_
41Tối đa ba ký tự kiểm soát việc mở rộng lịch sử, thay thế nhanh và mã thông báo [xem tài liệu tham khảo]. Ký tự đầu tiên là ký tự mở rộng lịch sử, nghĩa là ký tự biểu thị bắt đầu mở rộng lịch sử, thông thường là '. ’. Ký tự thứ hai là ký tự biểu thị 'thay thế nhanh' khi được xem là ký tự đầu tiên trên một dòng, thường là '^'. Ký tự thứ ba tùy chọn là ký tự cho biết phần còn lại của dòng là một nhận xét khi được tìm thấy dưới dạng ký tự đầu tiên của một từ, thường là '#'. Ký tự nhận xét lịch sử làm cho lịch sử thay thế bị bỏ qua đối với các từ còn lại trên dòng. Nó không nhất thiết khiến trình phân tích cú pháp shell coi phần còn lại của dòng là một nhận xét
_
42Số lịch sử hoặc chỉ mục trong danh sách lịch sử của lệnh hiện tại. Các bài tập cho _
42 bị bỏ qua. Nếu _
42 không được đặt, nó sẽ mất các thuộc tính đặc biệt, ngay cả khi nó được đặt lại sau đó
_
45Một danh sách các giá trị được phân tách bằng dấu hai chấm kiểm soát cách các lệnh được lưu trong danh sách lịch sử. Nếu danh sách các giá trị bao gồm 'ignorespace', các dòng bắt đầu bằng ký tự khoảng trắng sẽ không được lưu trong danh sách lịch sử. Giá trị của 'ignoredups' khiến các dòng khớp với mục nhập lịch sử trước đó không được lưu. Giá trị của 'ignoreboth' là cách viết tắt của 'ignorespace' và 'ignoredups'. Giá trị của 'erasedups' khiến tất cả các dòng trước khớp với dòng hiện tại bị xóa khỏi danh sách lịch sử trước khi dòng đó được lưu. Bất kỳ giá trị nào không có trong danh sách trên đều bị bỏ qua. Nếu _
45 không được đặt hoặc không bao gồm giá trị hợp lệ, thì tất cả các dòng được trình phân tích cú pháp shell đọc sẽ được lưu vào danh sách lịch sử, tùy thuộc vào giá trị của _
47. Dòng thứ hai và dòng tiếp theo của lệnh ghép nhiều dòng không được kiểm tra và được thêm vào lịch sử bất kể giá trị của _
45
_
49Tên của tệp mà lịch sử lệnh được lưu. Giá trị mặc định là ~/. bash_history
_
50Số dòng tối đa có trong tệp lịch sử. Khi biến này được gán một giá trị, tệp lịch sử sẽ bị cắt bớt, nếu cần, để chứa không quá số dòng đó bằng cách xóa các mục nhập cũ nhất. Tệp lịch sử cũng bị cắt bớt ở kích thước này sau khi ghi nó khi trình bao thoát. Nếu giá trị là 0, tệp lịch sử bị cắt bớt về kích thước bằng 0. Các giá trị không phải là số và các giá trị số nhỏ hơn 0 sẽ ngăn cản việc cắt bớt. Shell đặt giá trị mặc định thành giá trị của _
51 sau khi đọc bất kỳ tệp khởi động nào
Một danh sách các mẫu được phân tách bằng dấu hai chấm được sử dụng để quyết định dòng lệnh nào sẽ được lưu vào danh sách lịch sử. Mỗi mẫu được neo ở đầu dòng và phải khớp với dòng hoàn chỉnh [không có dấu '*' ngầm được thêm vào]. Mỗi mẫu được kiểm tra theo dòng sau khi áp dụng các kiểm tra được chỉ định bởi _
45. Ngoài các ký tự khớp mẫu vỏ thông thường, '&' khớp với dòng lịch sử trước đó. '&' có thể được thoát bằng dấu gạch chéo ngược; . Dòng thứ hai và dòng tiếp theo của lệnh ghép nhiều dòng không được kiểm tra và được thêm vào lịch sử bất kể giá trị của _
47. Khớp mẫu tôn vinh cài đặt của tùy chọn trình bao _
18
_
47 gộp chức năng của _
45. Mẫu ‘&’ giống với _
57 và mẫu ‘[ ]*’ giống với _
58. Kết hợp hai mẫu này, tách chúng bằng dấu hai chấm, cung cấp chức năng của _
59
_
51Số lệnh tối đa cần nhớ trong danh sách lịch sử. Nếu giá trị là 0, các lệnh không được lưu trong danh sách lịch sử. Các giá trị số nhỏ hơn 0 dẫn đến mọi lệnh được lưu trong danh sách lịch sử [không có giới hạn]. Shell đặt giá trị mặc định thành 500 sau khi đọc bất kỳ tệp khởi động nào
Nếu biến này được đặt và không phải là null, thì giá trị của biến này được sử dụng làm chuỗi định dạng cho _
61 để in dấu thời gian được liên kết với mỗi mục nhập lịch sử được hiển thị bởi nội dung dựng sẵn _
62. Nếu biến này được đặt, dấu thời gian được ghi vào tệp lịch sử để chúng có thể được lưu giữ trong các phiên trình bao. Điều này sử dụng ký tự nhận xét lịch sử để phân biệt dấu thời gian với các dòng lịch sử khác
_
63Chứa tên của một tệp có cùng định dạng với /etc/hosts nên được đọc khi trình bao cần hoàn thành tên máy chủ. Danh sách hoàn thành tên máy chủ có thể được thay đổi trong khi trình bao đang chạy; . Nếu _
63 được đặt, nhưng không có giá trị hoặc không đặt tên cho tệp có thể đọc được, Bash sẽ cố gắng đọc /etc/hosts để lấy danh sách hoàn thành tên máy chủ có thể. Khi _
63 không được đặt, danh sách tên máy chủ sẽ bị xóa
_
66Tên của máy chủ hiện tại
_
67Một chuỗi mô tả máy Bash đang chạy
Kiểm soát hành động của trình bao khi nhận được ký tự _
68 làm đầu vào duy nhất. Nếu được đặt, giá trị biểu thị số ký tự _
68 liên tiếp có thể được đọc là ký tự đầu tiên trên dòng đầu vào trước khi trình bao thoát ra. Nếu biến tồn tại nhưng không có giá trị số hoặc không có giá trị thì mặc định là 10. Nếu biến không tồn tại, thì _
68 biểu thị kết thúc đầu vào cho trình bao. Điều này chỉ có hiệu lực đối với shell tương tác
_
71Tên của tệp khởi tạo Readline, ghi đè giá trị mặc định của ~/. đầu vàorc
_
72Nếu Bash tìm thấy biến này trong môi trường khi trình bao khởi động, thì nó giả định rằng trình bao đang chạy trong bộ đệm trình bao Emacs và có thể tắt tính năng chỉnh sửa dòng tùy thuộc vào giá trị của _
73
_
74Được sử dụng để xác định danh mục ngôn ngữ cho bất kỳ danh mục nào không được chọn cụ thể với một biến bắt đầu bằng _
75
_
76Biến này ghi đè giá trị của _
74 và bất kỳ biến _
75 nào khác chỉ định danh mục ngôn ngữ
_
79Biến này xác định thứ tự đối chiếu được sử dụng khi sắp xếp kết quả mở rộng tên tệp và xác định hành vi của các biểu thức phạm vi, lớp tương đương và trình tự đối chiếu trong mở rộng tên tệp và khớp mẫu [xem ]
_
80Biến này xác định việc diễn giải các ký tự và hành vi của các lớp ký tự trong phần mở rộng tên tệp và khớp mẫu [xem tài liệu tham khảo]
_
81Biến này xác định ngôn ngữ được sử dụng để dịch các chuỗi trích dẫn kép đứng trước '$' [xem tài liệu tham khảo]
_
82Biến này xác định danh mục ngôn ngữ được sử dụng để định dạng số
Biến này xác định danh mục ngôn ngữ được sử dụng cho định dạng dữ liệu và thời gian
BASHOPTS
2Số dòng trong tập lệnh hoặc hàm trình bao hiện đang thực thi. Nếu BASHOPTS
2 không được đặt, nó sẽ mất các thuộc tính đặc biệt của nó, ngay cả khi nó được đặt lại sau đó
_
85Được sử dụng bởi lệnh BASHPID
0 để xác định độ dài cột để in danh sách lựa chọn. Tự động đặt nếu tùy chọn BASHPID
1 được bật [xem ] hoặc trong trình bao tương tác khi nhận được BASHPID
2
$$
2Một chuỗi mô tả đầy đủ loại hệ thống mà Bash đang thực thi, ở định dạng hệ thống cpu-công ty GNU tiêu chuẩn
_
90Tần suất [tính bằng giây] mà shell sẽ kiểm tra thư trong các tệp được chỉ định trong các biến _
91 hoặc _
92. Mặc định là 60 giây. Khi đến lúc kiểm tra thư, trình bao sẽ thực hiện việc này trước khi hiển thị dấu nhắc chính. Nếu biến này không được đặt hoặc được đặt thành một giá trị không phải là một số lớn hơn hoặc bằng 0, trình bao sẽ tắt tính năng kiểm tra thư
_
93Một biến mảng được tạo để giữ văn bản được đọc bởi nội trang _
94 khi không có tên biến nào được cung cấp
_
95Thư mục làm việc trước đó như được thiết lập bởi nội dung dựng sẵn _
96
_
97Nếu được đặt thành giá trị 1, Bash sẽ hiển thị các thông báo lỗi được tạo bởi lệnh dựng sẵn _
98
_
99Một chuỗi mô tả hệ điều hành Bash đang chạy trên đó
BASH
00Một biến mảng [xem ] chứa danh sách các giá trị trạng thái thoát khỏi các quy trình trong quy trình tiền cảnh được thực thi gần đây nhất [có thể chỉ chứa một lệnh duy nhất]
BASH
01Nếu biến này ở trong môi trường khi Bash khởi động, trình bao sẽ chuyển sang chế độ POSIX [xem ] trước khi đọc các tệp khởi động, như thể tùy chọn yêu cầu --posix đã được cung cấp. Nếu nó được đặt trong khi trình bao đang chạy, Bash sẽ bật chế độ POSIX, như thể lệnh
đã được thực hiện. Khi Shell vào chế độ POSIX, nó sẽ đặt biến này nếu nó chưa được đặt
BASH
02ID tiến trình của tiến trình cha của trình bao. Biến này là chỉ đọc
BASH
03Nếu biến này được đặt và là một mảng, giá trị của mỗi phần tử được đặt được hiểu là một lệnh để thực thi trước khi in dấu nhắc chính [BASH
04]. Nếu giá trị này được đặt nhưng không phải là biến mảng, thì giá trị của nó được sử dụng làm lệnh để thực thi thay thế
BASH
05Nếu được đặt thành một số lớn hơn 0, thì giá trị này được sử dụng làm số lượng thành phần thư mục theo sau để giữ lại khi mở rộng chuỗi dấu nhắc BASH
06 và BASH
07 [xem ]. Các ký tự bị xóa được thay thế bằng dấu chấm lửng
BASH
08Giá trị của tham số này được mở rộng như BASH
09 và được hiển thị bằng shell tương tác sau khi đọc lệnh và trước khi lệnh được thực thi
BASH
10Giá trị của biến này được sử dụng làm lời nhắc cho lệnh BASHPID
0. Nếu biến này không được đặt, lệnh BASHPID
0 sẽ nhắc với '#?
BASH
13Giá trị của tham số này được mở rộng như BASH
09 và giá trị được mở rộng là lời nhắc được in trước khi dòng lệnh được lặp lại khi tùy chọn -x được đặt [xem ]. Ký tự đầu tiên của giá trị mở rộng được sao chép nhiều lần, nếu cần, để biểu thị nhiều mức độ gián tiếp. Mặc định là ‘+’
BASH
15Thư mục làm việc hiện tại được thiết lập bởi nội dung dựng sẵn _
96
BASH
17Mỗi khi tham số này được tham chiếu, nó sẽ mở rộng thành một số nguyên ngẫu nhiên trong khoảng từ 0 đến 32767. Gán một giá trị cho biến này khởi tạo bộ tạo số ngẫu nhiên. Nếu BASH
17 không được đặt, nó sẽ mất các thuộc tính đặc biệt của nó, ngay cả khi nó được đặt lại sau đó
BASH
19Bất kỳ đối số số nào được cung cấp cho lệnh Readline được xác định bằng cách sử dụng 'bind -x' [xem khi nó được gọi
BASH
20Nội dung của bộ đệm dòng Readline, để sử dụng với 'bind -x' [xem phần ]
BASH
21Vị trí của dấu [điểm chèn đã lưu] trong bộ đệm dòng Readline, để sử dụng với 'bind -x' [xem phần ]. Các ký tự giữa điểm chèn và dấu thường được gọi là vùng
BASH
22Vị trí của điểm chèn trong bộ đệm dòng Readline, để sử dụng với ‘bind -x’ [xem tài nguyên]
BASH
23Biến mặc định cho nội trang BASH
24
BASH
25Biến này mở rộng thành số giây kể từ khi trình bao được khởi động. Gán cho biến này đặt lại số đếm thành giá trị được gán và giá trị được mở rộng trở thành giá trị được gán cộng với số giây kể từ khi gán. Số giây khi gọi trình bao và thời gian hiện tại luôn được xác định bằng cách truy vấn đồng hồ hệ thống. Nếu BASH
25 không được đặt, nó sẽ mất các thuộc tính đặc biệt, ngay cả khi nó được đặt lại sau đó
BASH
27Biến môi trường này mở rộng thành tên đường dẫn đầy đủ tới trình bao. Nếu nó không được đặt khi trình bao khởi động, Bash sẽ gán cho nó tên đường dẫn đầy đủ của trình bao đăng nhập của người dùng hiện tại
BASH
28Một danh sách các tùy chọn trình bao đã bật được phân tách bằng dấu hai chấm. Mỗi từ trong danh sách là một đối số hợp lệ cho tùy chọn -o đối với lệnh dựng sẵn BASH
29 [xem phần ]. Các tùy chọn xuất hiện trong BASH
28 là những tùy chọn được báo cáo là 'bật' bởi 'set -o'. Nếu biến này ở trong môi trường khi Bash khởi động, mỗi tùy chọn trình bao trong danh sách sẽ được bật trước khi đọc bất kỳ tệp khởi động nào. Biến này là chỉ đọc
BASH
31Tăng lên một lần mỗi khi một phiên bản Bash mới được bắt đầu. Điều này nhằm mục đích đếm xem các vỏ Bash của bạn được lồng vào nhau sâu đến mức nào
BASH
32Biến này mở rộng thành số giả ngẫu nhiên 32 bit mỗi khi nó được tham chiếu. Trình tạo số ngẫu nhiên không tuyến tính trên các hệ thống hỗ trợ /dev/urandom hoặc BASH
33, vì vậy mỗi số được trả về không có mối quan hệ nào với các số trước nó. Bộ tạo số ngẫu nhiên không thể được chọn, vì vậy việc gán cho biến này không có tác dụng. Nếu BASH
32 không được đặt, nó sẽ mất các thuộc tính đặc biệt, ngay cả khi nó được đặt lại sau đó
Giá trị của tham số này được sử dụng làm chuỗi định dạng chỉ định cách hiển thị thông tin thời gian cho các đường ống có tiền tố là từ dành riêng _
04. Ký tự '%' giới thiệu một chuỗi thoát được mở rộng thành giá trị thời gian hoặc thông tin khác. Trình tự thoát hiểm và ý nghĩa của chúng như sau;
BASH
36Một chữ '%'
BASH
37Thời gian trôi qua tính bằng giây
BASH
38Số giây CPU sử dụng trong chế độ người dùng
BASH
39Số giây CPU sử dụng trong chế độ hệ thống
BASH
40Phần trăm CPU, được tính là [%U + %S] / %R
Tùy chọn p là một chữ số chỉ định độ chính xác, số chữ số phân số sau dấu thập phân. Giá trị 0 khiến đầu ra không có dấu thập phân hoặc phân số. Có thể chỉ định tối đa ba vị trí sau dấu thập phân; . Nếu p không được chỉ định, giá trị 3 được sử dụng
BASH
41 tùy chọn chỉ định định dạng dài hơn, bao gồm cả phút, ở dạng MMmSS. FF. Giá trị của p xác định xem phân số có được bao gồm hay không
Nếu biến này không được đặt, Bash hoạt động như thể nó có giá trị
$'\nreal\t%3lR\nuser\t%3lU\nsys\t%3lS'
Nếu giá trị là null, không có thông tin thời gian nào được hiển thị. Một dòng mới ở cuối được thêm vào khi chuỗi định dạng được hiển thị
BASH
42Nếu được đặt thành một giá trị lớn hơn 0, thì BASH
42 được coi là thời gian chờ mặc định cho nội trang BASH
24 [xem phần ]. Lệnh BASHPID
0 [xem ] kết thúc nếu đầu vào không đến sau BASH
42 giây khi đầu vào đến từ một thiết bị đầu cuối
Trong trình bao tương tác, giá trị được hiểu là số giây chờ một dòng đầu vào sau khi đưa ra lời nhắc chính. Bash kết thúc sau khi đợi số giây đó nếu một dòng đầu vào hoàn chỉnh không đến
BASH
47Nếu được đặt, Bash sử dụng giá trị của nó làm tên của thư mục trong đó Bash tạo các tệp tạm thời để trình bao sử dụng