TextEditor'u komut satırından nasıl başlatabilirim?


65

Bir Terminaldeki komut satırında çok çalışıyorum ve belirli bir dosyada bir metin editörü başlatmak istiyorum. Ben Linux Land'denim ve normalde bir bash kabuğundan kwrite veya gedit kullanıyorum. Mac eşdeğerini bulmaya çalışmak, tahmin edildiği gibi

user> textedit somefile.txt

ve

user> texteditor somefile.txt

ve

user> TextEditor somefile.txt

ve diğer varyasyonlar. Metin editörü uygulamasının uygun adını bulamıyorum. (Hayır, vi benim istediğim gibi değil.) İşin garibi, bir Apple mağazasındaki adam bunu bilmiyordu.


Hem Nathan hem de mipadi hem cevap veriyor, ama bence sadece kısmi cevaplar, ben de ekledim. Yanıtlarını bir şekilde birleştirmenin daha iyi olacağından emin değilim ve eğer öyleyse, bunun nasıl yapıldığını.
Viktor Haag,

@Viktor genellikle insanların daha önce söylediği şeyleri tekrar göndermek iyi olmaz ve kopyalar silinir. Ekleyecek bir şeyiniz olduğundan, gitmenin iyi yolları, "Nathan ve mipadi'nin tekniklerine ek olarak ..." diyen bir cevap veya eklerinizle ilgili bu cevaplarla ilgili yorumlar olabilir. Burada yaptığın şey tamam, ama tam olarak 'en iyi uygulama' değil. Sorduğunuz için teşekkürler; Şimdi gelecek için biliyorsun :-).
Nathan Greenstein

Yanıtlar:


105

İşte hepsi 'open' komut satırı yardımcı programını kullanarak bazı olası cevaplar.

-A seçeneği "adlı uygulama ile dosya argüman açmak" anlamına gelir:

open -a TextEdit file.txt

-E seçeneği "TextEdit'i uygulama ile dosya argüman açmak" anlamına gelir:

open -e file.txt

-T seçeneği "LaunchServices aracılığıyla belirlendiği üzere, düzenleme metin dosyaları için varsayılan uygulamayla dosyayı açmak" anlamına gelir. Varsayılan olarak, bu /Applications/TextEdit.app; ancak, bu ayarın geçersiz kılınması mümkündür:

open -t file.txt

Son olarak, "metin" türünde olan herhangi bir dosya, sadece söylerseniz, metin türüne bağlı olan uygulama tarafından açılır open file.txt. Sen işletim sistemi dosya türü olduğunu düşündüğünü ortaya çıkarmak için "Dosya" komutunu kullanabilirsiniz: file file.txt. Örneğin, eğer "file.txt" yi sadece "textfile" olarak değiştirirseniz, o open textfilezaman hala file textfile"textfile" öğesinin aslında bir metin dosyası olduğunu düşündüğünüz sürece, varsayılan metin dosyası düzenleme uygulamasında açılacaktır .

Kısa bir 'yardım' dosyasını opençalıştırarak bulunabilir

open --help

Ya da tüm kılavuzu okuyabilirsiniz

man open

2
Bunu .bash_profile: "alias o = 'open -a Sublime \ Text \ 2'" içine koydum ve sonra komut istemine şunu yazabilirim: "o text.txt". Parmaklarda çok kolay;)
cmroanirgo

openBunu yapmanın tek 'doğru' yoludur.
Kuzen Kokain

13

Varsayılan metin editörü TextEdit'tir. Bir metin dosyasını orada open -a kullanarak açabilirsiniz :

$ open -a TextEdit hi.txt

Başka bir uygulama kullanmak istiyorsanız, bunun adını yazın, şunun gibi:

$ open -a Coda index.html

Bu benim için (OSX Mojave) hem TextEdit hem de Visual Studio Code ile çalıştı. Teşekkür ederim!
RJ Dunnill,

8

İki yol var:

Varsayılan metin düzenleyiciniz TextEdit ise, sadece kullanabilirsiniz

open -t file.txt

TextEditor'da açmak için

Varsayılan metin düzenleyiciniz TextEdit değilse ve özellikle TextEdit'te açmak istiyorsanız, onu kullanabilirsiniz.

/Applications/TextEdit.app/Contents/MacOS/TextEdit file.txt

Bunlardan biri elbette, kabuk yapılandırma dosyanızda bir takma ad yapılabilir.


Dosya adı argümanını doğrudan komut satırındaki uygulamanın adına iletme kuralının tüm uygulamalar için çalışmayacağına dikkat edin. Yalnızca komut satırındaki dosya adlarını açmak için geçerli argümanlar olarak kabul edilen uygulamalar bu şekilde çalışır. Ben düşünüyorum daha genel olduğunu openkomut açık komutuna geçirilen dosya argümanı "açmak" için bir uygulama almak için daha kapsamlı bir yöntem kullanır (yani o Finder'ın eylem çalışır "çift tıklama açmak için" hangi aynı işlevselliğe bağlıdır).
Viktor Haag,

@Viktor Haag: İkisi de TextEdit ile çalışacak.
mipadi

6

Daha fazla "linux feel" ile rahat bir yol arıyorsanız, aşağıdakine benzer bir şey ekleyin ~/.profile:

alias textmate='open -a TextMate'

veya

alias textedit='open -a TextEdit'

Editörünüze bağlı olarak


2
Her ne kadar .profileeser, .bash_profileOS X'te daha yaygındır
CousinCocaine

3

Eğer zaten terminalde yazmaya başladıysanız ve favori düzenleyicinize devam etmek istiyorsanız, ctrl+ X, ctrl+ tuşlarına basıp Eemacs veya varsayılan bash editörünüzde çalışmaya devam edebilirsiniz.

Varsayılan düzenleyiciyi değiştirmek istiyorsanız, EDITOR ortam değişkenini tercih ettiğinize göre değiştirin:

EDITOR=vim;export EDITOR

0

Bakalım vim editörünüz varsa, terminalimin kullanabileceğini bile bilmiyordum.

Deneyin:

user> vimtutor 

kontrollerini bulmak için.

Dosyaları oldukça iyi düzenleyebilirsiniz. Sözdizimi şuna benzer:

user> vim foo.txt

0

TextWrangler (şimdi iptal edildi ve BBEdit ile değiştirildi), yüklendiğinde Command Line Utilitiesşunları yapmanıza izin verdi:

edit README.txt

benden daha güzel olan TextWrangler'ı başlatmak için open -t README.txt, ama belki de sadece ataletten muzdaripim.

FYI - editİkili bir çalıştırılabilir dosyadır (TextWrangler kitinden), sadece bir diğer ad veya sembolik bağlantı değil.


-3

geditKomutunu kullanın :

gedit your-file.ext

2
geditMacOS'ta varsayılan olarak yüklenmemiş olsa da, t homebrew aracılığıyla yüklenebilirbrew install gedit
Scot

Linux üzerinde çalışıyor: D
Alex Chaliy,

OP, Linux değil bir MacOS çözümü arıyor. Ve Linux'taki gedit'in yerini alacak bir şey aramaktan bahsetti. Ayrıca, bu bir MacOS sitesi, bu yüzden bir Linux çözümüfftopic olurdu.
Scot,
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.