thoát khỏi thiết bị đầu cuối hiện tại trong một tập lệnh


0

Tôi đã tạo bí danh để chạy chương trình nhất định và tôi đã đưa nó vào .bashrctập tin. Tôi muốn đóng thiết bị đầu cuối hiện tại bên trong tập lệnh. Tôi đã thử điều này nhưng nó không hoạt động.

alias mp='java -jar myprogram.jar & && kill $(echo $$)'

có vẻ như nó không thể tự sát. os hoạt động là Ubuntu 12.04.

Câu trả lời:


0

Thử đi:

alias mp='java -jar myprogram.jar & && kill -SIGHUP $(echo $$)'

Tôi thực sự đã không thử toàn bộ lệnh của bạn, nhưng thêm -SIGHUPvào lệnh kill đã đóng thiết bị đầu cuối của tôi.

Từ trang Wikipedia về tín hiệu Unix :

Tín hiệu SIGHUP được gửi đến một quy trình khi thiết bị đầu cuối điều khiển của nó bị đóng. Ban đầu nó được thiết kế để thông báo cho quá trình thả dòng nối tiếp (cúp máy). Trong các hệ thống hiện đại, tín hiệu này thường có nghĩa là thiết bị đầu cuối giả hoặc thiết bị ảo đã bị đóng. [3] Nhiều trình nền sẽ tải lại các tệp cấu hình của chúng và mở lại các tệp logfile của chúng thay vì thoát khi nhận được tín hiệu này. [4] nohup là một lệnh để thực hiện một lệnh bỏ qua tín hiệu.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.