Mở ứng dụng từ OSX Terminal với bản in gỡ lỗi


2

Tôi có thể mở một ứng dụng bằng cách sử dụng open, như thế này:

open ./MyApp.app

Nhưng điều này không hiển thị các bản in gỡ lỗi của ứng dụng - thứ tôi cần.

Nếu tôi xác định vị trí nhị phân bên trong gói theo cách thủ công và chạy nó, tôi sẽ nhận được bản in tốt, nhưng tôi muốn có thể chạy ứng dụng.


1
Vì vậy, bạn không muốn chạy nền thực thi từ bash để xem đầu ra? Tôi không chắc chắn rằng có bất kỳ cách nào khác để làm điều này, gói .app là một thiết kế độc quyền của Apple mà Bash sẽ không nhận thức được.
jcrawfordor

Tôi muốn ứng dụng chạy ẩn nhưng cũng phải sử dụng ca cao. Điều này hoạt động tốt nếu tôi đặt "Ứng dụng là tác nhân" trong tệp plist và chạy nó như một ứng dụng thực tế. Nếu tôi chỉ chạy nhị phân trực tiếp, nó không chạy ẩn và hiển thị các thành phần menu dock +.
Matt

1
Trên thực tế nếu tôi chạy nhị phân bằng cách chỉ định đường dẫn chứ không phải cd-ing cho nó, nó hoạt động tốt. Mát mẻ.
Matt

Câu trả lời:


0

Không có cờ gỡ lỗi hoặc cờ dài cho lệnh mở.

Bạn có thể xem đầu ra Cảnh báo hoặc Lỗi của ứng dụng bằng cách sử dụng console.app.

console.app

Ngoài ra, nếu ứng dụng của bạn có cờ gỡ lỗi hoặc cờ dài, bạn có thể chuyển cờ cho ứng dụng của mình bằng cách sử dụng open --args. Ví dụ: Google Chrome có các cờ --enable-logging --v=1để bật gỡ lỗi và lưu kết quả đầu ra chrome_debug.logvào thư mục dữ liệu người dùng Chrome. Bạn có thể khởi chạy Google Chrome với các tùy chọn sau

open -a "Google Chrome" --args --enable-logging --v=1

Tùy chọn cho openlệnh

 -a application
     Specifies the application to use for opening the file

 -b bundle_indentifier
     Specifies the bundle identifier for the application to use when open-
     ing the file

 -e  Causes the file to be opened with /Applications/TextEdit

 -t  Causes the file to be opened with the default text editor, as deter-
     mined via LaunchServices

 -f  Reads input from standard input and opens the results in the default
     text editor.  End input by sending EOF character (type Control-D).
     Also useful for piping output to open and having it open in the
     default text editor.

 -F  Opens the application "fresh," that is, without restoring windows.
     Saved persistent state is lost, except for Untitled documents.

 -W  Causes open to wait until the applications it opens (or that were
     already open) have exited.  Use with the -n flag to allow open to
     function as an appropriate app for the $EDITOR environment variable.

 -R  Reveals the file(s) in the Finder instead of opening them.

 -n  Open a new instance of the application(s) even if one is already run-
     ning.

 -g  Do not bring the application to the foreground.

 -j  Launches the app hidden.

 -h  Searches header locations for a header whose name matches the given
     string and then opens it.  Pass a full header name (such as NSView.h)
     for increased performance.

 -s  For -h, partial or full SDK name to use; if supplied, only SDKs whose
     names contain the argument value are searched. Otherwise the highest
     versioned SDK in each platform is used.

 --args
     All remaining arguments are passed to the opened application in the
     argv parameter to main().  These arguments are not opened or inter-
     preted by the open tool.

-1

Giải pháp là chỉ định đường dẫn tuyệt đối của ứng dụng, thay vì đường dẫn liên quan đến thư mục hiện tại.

Ví dụ,
open /home/matt/MyApp.app


2
Điều này không nên làm cho bất kỳ sự khác biệt.
Daniel Beck
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.