2010-07-08 32 views

Trả lời

18

đây: http://sillydog.org/unix/scrpt/scrpt2.2.2.php

$ 1 - $ 9 các biến này là tham số vị trí.

$ 0 tên của lệnh hiện đang được thực hiện.

$ # số lượng vị trí đối số được đưa ra cho yêu cầu gọi trình bao này.

$? trạng thái thoát của lệnh cuối cùng được thực thi là được cung cấp dưới dạng chuỗi thập phân. Khi một lệnh hoàn tất thành công, nó trả về trạng thái thoát của 0 (số không), nếu không, nó sẽ trả về một trạng thái khác.

$$ số quy trình vỏ này - hữu ích cho bao gồm trong tên tệp, để làm cho chúng trở nên độc đáo.

$! id quá trình của lệnh cuối cùng chạy trong nền.

$ - các tùy chọn hiện tại được cung cấp cho yêu cầu này của vỏ.

$ * một chuỗi có chứa tất cả các đối số đối với vỏ , bắt đầu từ $ 1.

$ @ giống như trên, ngoại trừ khi được trích dẫn.

Tài nguyên khác:

+0

Hãy nhận biết của * csh * '$? Name', trả về 1 nếu biến 'tên' được xác định và 0 nếu không. (Đến từ thế giới Perl, tôi thấy nó cực kỳ khó hiểu trong * Unix Power Tools *.) –

1

Từ the Linux Documentation Project (với thêm $ _ biến):

$* Mở rộng đến các tham số vị trí, bắt đầu từ một. Khi mở rộng xảy ra trong dấu nháy kép, nó mở rộng thành một từ duy nhất với giá trị của mỗi thông số được phân cách bằng ký tự đầu tiên của biến đặc biệt IFS.

[email protected] Mở rộng các thông số vị trí, bắt đầu từ một.Khi mở rộng xảy ra trong dấu ngoặc kép, mỗi tham số sẽ mở rộng thành một từ riêng biệt.

$# Mở rộng số tham số vị trí theo số thập phân.

$? Mở rộng đến trạng thái thoát của đường ống nền trước được thực thi gần đây nhất.

$- Dấu gạch nối mở rộng đến cờ tùy chọn hiện tại như được chỉ định khi được gọi, bởi lệnh được cài đặt sẵn hoặc lệnh được đặt bởi chính vỏ (chẳng hạn như -i).

$$ Mở rộng đến ID tiến trình của trình bao.

$! Mở rộng đến ID tiến trình của lệnh được thực thi gần đây nhất (không đồng bộ).

$0 Mở rộng đến tên của shell hoặc shell script.

$_ Biến gạch dưới được đặt lúc khởi động trình bao và chứa tên tệp tuyệt đối của hệ vỏ hoặc tập lệnh đang được thực hiện như được chuyển trong danh sách đối số. Sau đó, nó mở rộng đến đối số cuối cùng cho lệnh trước đó, sau khi mở rộng. Nó cũng được đặt thành tên đường dẫn đầy đủ của mỗi lệnh được thực hiện và được đặt trong môi trường được xuất ra lệnh đó. Khi kiểm tra thư, tham số này giữ tên của tệp thư.

2

Các tài liệu tham khảo tốt nhất hiện nay, là Các POSIX tiêu chuẩn Shell Specification, đặc biệt là phần trên Special Parameters.

Các vấn đề liên quan