Terminal'de "open" komutunu kullanarak uygulama başlatılamıyor


2

Son zamanlarda Terminal.app'i çok kullanmaya başladım. Bu openkomutun HTML, CSS dosyaları vb. Dosyaları açarken yardımcı olacağını düşündüm .

Microsoft'tan Visual Studio Code uygulamasını denedim . Uygulamanın kendisi kurulum olmadan iyi çalışıyor. Sorun ben komut kullandığımda: open -ave sekme tuşuna basın, uygulama Visual Studio Kodu görünmüyor.

Doğru uygulamayı yüklemek için bir yol olup olmadığını merak ediyorum? Okudum man openkomutu LaunchServices'e bağlı ve uygulamayı bu hizmete kaydetmenin bir yolunu bulamıyorum.

Yanıtlar:


3

Ana dizinden yolu belirtirseniz, open -akomut verilecek argüman (lar) Tabotomatik olarak tamamlanabilir, örn open -a /Applications.

Visual Studio Code'u Terminal'den başlatmak için aşağıdaki komut satırını çalıştırmayı deneyin:

open -a "Visual Studio Code"

Komutu kullanarak index.html adlı bir dosyayı Visual Studio Code uygulaması ile açmak için şunu openyazın:

open -a "Visual Studio Code" index.html

Lütfen boşluk içeren uygulamanın adını çift tırnak içine almanız gerektiğini unutmayın.

Ayrıca, man sayfasından alıntı:

Open komutu, bir dosyayı (veya bir dizini veya URL'yi), tıpkı dosyanın simgesini çift tıklattığınız gibi açar. Hiçbir uygulama adı belirtilmezse, belirtilen dosyaları açmak için LaunchServices aracılığıyla belirlenen varsayılan uygulama kullanılır.

Komutu kullanarak bir dosyayı açmaya çalıştığınız zaman ifade ifade eder open. Bir uygulamayı başlatmak için, sözdizimi openkomutun ardından boşluk, ardından -abayrak, başka bir boşluk sonra uygulamanın adıdır ( "ad boşluk içeriyorsa içine alınır ).

Uygulamayı henüz yüklemediyseniz, Visual Studio Code.app paketini /Applicationsdizine kopyalayarak yüklemelisiniz .


1
-aBayrağı kullanıyorsanız , uygulamayı belirtmeniz gerekir. Örnek: open -a /Applications/Komodo\ Edit\ 11.app/ "foo.bar"ve otomatik tamamlama yapar çalışma. /Applications
Allan

Bir uygulama teklif etmek yerine, paket tanımlayıcısını open komutuyla kullanmayı tercih ediyorumopen -b com.apple.DiskUtility
fd0

Yardımın için teşekkürler, ama sormamın nedeni VMware Fusion gibi doğru yüklenmiş uygulamalarla `open -a 'kullandığımda sekme yapmam gerekiyor ve otomatik tamamlama benim için öneriyor. Buradaki sorun, bazı uygulamaların kurulum yapılmadan çalışması için yapılmıştır ve otomatik olarak tamamlanamamıştır.
lilw

1
@lilw bash'in otomatik tamamlama özelliği varsayılan olarak içeriğe duyarlı değildir. Aşağıdakilerin open -a bir uygulama adı veya yolu olması gerektiğini bilmiyor, sadece bir dosya yolunu veya geçerli dizindeki bir dosyanın adını doldurduğunuzu varsayan, otomatik tamamlama için standart kurallarını uygulamaktadır. Bu durum için özel bir otomatik tamamlama kuralı yazabilirsiniz, ancak çok fazla iş olurdu. Veya, open -a /Applications/standart otomatik tamamlama adaylarının uygulama olması için başlayabilirsiniz .
Gordon Davisson,

@GordonDavisson cevabınız için teşekkürler, bunun için bir kural yazarken benim cevabımın bu olduğunu düşünüyorum. Evet, karmaşık.
lilw
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.