Tránh nhắc [xử lý hoàn tất] sau khi tập lệnh đầu cuối kết thúc trên Mac OS X


32

Trong trình soạn thảo văn bản của mình, tôi đã ràng buộc một phím tắt để triển khai mã của mình bằng cách gọi một lệnh như

/usr/bin/open /Users/blahblah/run_deploy

Tập lệnh triển khai đó tải mã của tôi lên máy chủ của tôi, v.v. Tôi đang sử dụng "open" để tôi có thể thấy đầu ra trong cửa sổ terminal mới trong trường hợp có bất kỳ lỗi nào. Rất thuận tiện, nhưng cuối cùng, nó để cửa sổ terminal mở với dòng chữ "[Quá trình hoàn tất]".

Bất kỳ cách nào để bỏ qua điều này và thay vào đó chỉ tự động đóng cửa sổ?

Quá trình đầu cuối hoàn thành


1
Cho rằng bạn đã đặt Terminal đóng cửa sổ khi thoát khỏi vỏ, có vẻ như đó là sự cố Terminal. Bạn đã thử xóa tệp ưu tiên com.apple.Terminal.plistkhỏi thư mục Tùy chọn của mình và thử đặt lại tệp chưa?
Chealion

Bạn vẫn có vấn đề này?
Daniel Beck

Câu trả lời:


52

Trong Tùy chọn thiết bị đầu cuối , trong ngăn Cấu hình, chọn Cấu hình bạn sử dụng (nên nói "mặc định" dưới tên của nó), chọn khung phụ Shell và thay đổi « Khi thoát khỏi vỏ: » thành « Đóng nếu vỏ thoát ra sạch ».

Nó sẽ không ẩn [Process completed]tin nhắn, nhưng sẽ đóng cửa sổ nếu mã thoát thành công.


Vì một số lý do, tôi không thể thay đổi cài đặt trong cửa sổ terminal. Nếu tôi thay đổi chúng trong một cửa sổ terminal khác và "sử dụng như mặc định", thì chúng vẫn không được sử dụng trong cửa sổ terminal mới. Đây là cửa sổ thiết bị đầu cuối mới trông như thế nào: i.imgur.com/u3tk4.png
Bemmu

Đầu tiên để thực hiện kiểm tra chạy nhanh hơn sau: echo 'say hello' > test; chmod +x test(nó sẽ tạo ra tệp thực thi sẽ nói xin chào), chạy open testhoặc bấm đúp vào trình tìm kiếm sẽ chạy nó với thiết bị đầu cuối theo mặc định. Trên ảnh chụp màn hình của bạn, không có lược đồ nào được chọn (không biết làm thế nào, tôi không thể chọn tất cả chúng), vì vậy hãy chọn Cơ bản vì nó được đánh dấu «Mặc định» và đặt cài đặt đóng, sau đó thử chạy tập lệnh.
tig

Cảm ơn, nhưng điều đó cũng không hiệu quả: i.imgur.com/cCo49.png
Bemmu

Bạn sử dụng phiên bản os nào (không biết có liên quan hay không, tôi sử dụng 10.6.4)? Có lẽ đây là do thư chưa đọc? Hãy thử sử dụng mailđể đọc nó. Có lẽ có gì đó không đúng với đăng xuất? Bạn có ~/.bash_logouttập tin, nếu có, bên trong là gì? Hãy thử chạy bash -c exit && echo 'ok'- bạn sẽ thấy 'ok', cũng thử chỉ chạy exittrong shell mới - nó sẽ đóng cửa sổ. Bạn có sử dụng các nhóm cửa sổ? i.imgur.com/thPNV.png
tig

1
Bạn có thể đặt lệnh "killall Terminal" ở cuối tập lệnh của bạn hay không? Tôi biết rằng sẽ đóng cửa sổ bất kể là gì, nhưng ít nhất bạn có thể xem những gì đang diễn ra trong quá trình chạy kịch bản (và bạn cũng có thể đẩy đầu ra sang nhật ký, chỉ trong trường hợp).
jrc03c

0

Sửa chữa quyền thông qua Disk utilityứng dụng đã giải quyết vấn đề cho tôi.

Tôi liên tục thấy lỗi trong Consoleứng dụng:

20/08/2015 01:17:42.318 login[3291]: in pam_sm_open_session(): Unable to write the utmp record.
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.