Ý nghĩa của $$
trong KornShell là gì? Tôi đoán nó được liên kết với ID quá trình, nhưng tôi muốn biết ý nghĩa chính xác của nó.
Trả lời
$$
là id quá trình của chính quá trình ksh; $PPID
là id quá trình của cha mẹ.
Đây là ksh (93) documentation for special parameters (sau màn hình đầu tiên). Thông tin tương tự for ksh88.
Nó được sử dụng để tạo tên tạm thời với id tiến trình. Giả sử bạn cần tên tệp nhưng tên đó cần phải là duy nhất cho quá trình bạn đang ở - vì vậy nếu nhiều người chạy cùng một tập lệnh ksh thì họ sẽ không bước vào nhau.
$$ nằm trong bash, sh và các vỏ UN * X khác.
id quá trình, ksh, cha mẹ hoặc con? –
Nếu bạn chạy một kịch bản ksh thì ksh nhánh và con chạy như là quá trình riêng của nó. Nếu bạn chạy một cái gì đó với "$ ./script" thì nó chạy nội dòng trong tiến trình hiện tại. –
@Philip: huh? chắc chắn bạn có nghĩa là ". ./script" sau đó nó thực hiện trong shell hiện tại –
Cảm ơn Martin, tôi đã nhận được câu trả lời của tôi :) –