Czy mogę otwierać pliki w TextEdit z terminala w Mac OS X?

168

Często stwierdzam, że bardzo przydatne byłoby polecenie Terminal, aby otworzyć plik w TextEdit. Czy takie polecenie istnieje w systemie Mac OS X?

wfbarksdale
źródło
Próbuję otworzyć Sublime Text z wiersza poleceń. Zrobiłem „open -a / Applications / Sublime Text 2.app my_file.txt”. Działa, ale tworzy nowe okno za każdym razem, gdy chcę otworzyć plik. Jakaś poprawka?
Mohammad Moghimi
1
Jeśli chcesz sudo, otwórz najpierw TextEdit w trybie root
cregox
@MohammadMoghimi Spróbuj po prostu użyć sublimepolecenia.
Timothy Mueller-Harder

Odpowiedzi:

229

open -a TextEdit filename powinien załatwić sprawę.

-aFlaga określa dowolną aplikację, która ma, więc zastosowanie do dowolnej liczby sytuacji, w tym te, gdzie TextEdit nie jest domyślny edytor.

Inne istotne opcje

  • -t otwiera się w domyślnym edytorze (np. jeśli korzystasz z BBEdit, TextMate itp.)
  • -e otworzy plik konkretnie w TextEdit
robmathers
źródło
2
Prawdopodobnie najlepsze rozwiązanie.
daviesgeek
Jeśli chcesz program, którego nazwa ma spacje, musisz uciec przed nimi, np. Otwórz -a Adobe \ Photoshop \ CS6
image.png
Jak otworzyć za pomocą SublimeText3, który pozostaje w / path / SublimeText3?
emeraldhieu
3
W openpodręczniku polecenia zobaczysz -e Causes the file to be opened with /Applications/TextEdit. Więc open -e filenamezrób to samo i jest prostsze.
DawnSong
Czy dostępne aplikacje są zdefiniowane jako te, które są w środku /Applications/?
Daniel Pendergast
39

Bezpośrednia, łatwa odpowiedź - dodaj alias do swojego ~ / .bash_profile, np .:

alias textedit='open -a TextEdit'

Wywołaj to tak:

textedit theFiletoEdit.txt

Różnica między tą a drugą odpowiedzią polega na tym, że możesz ją łatwo zapamiętać, kiedy chcesz. Pisanie texti Tabautouzupełnianie spowoduje, że będzie on natychmiast dostępny


Dla tych z nieco większym zapleczem, którzy chcą rozumowania bez kłopotów z jego zrozumieniem:

  • Problem polega na tym, że trywialne dowiązanie symboliczne (lub jego podobne, jak przekierowanie skryptu powłoki) /Applications/TextEdit.app/Contents/MacOS/TextEditpowoduje, że nowa instancja TextEditotwiera plik, który do niego przekazujesz. Działa to, ale nie daje oczekiwanego domyślnego zachowania Mac OS X. (jeśli spróbujesz, zobaczysz)

  • Aby uzyskać domyślne zachowanie interfejsu użytkownika, przy użyciu wbudowanego openpolecenia komputera Mac z flagą „-a TextEdit” (wspomniane przez innych) powoduje, że interfejs użytkownika komputera Mac obsługuje (dowolną) aktualnie uruchomioną instancję TextEdit obsługującą wywołanie (bez niedozwolonych poleceń „ sudo 'potrzebne do ogólnego użycia skrzynki).

Matt S.
źródło
Otwieranie pliku w już działającej instancji textedit nie działa w mojejve. Próbowałem wszystkich flag.
Karl Pokus
6

Polecenia open można używać do otwierania plików (w ich domyślnych aplikacjach, chyba że używa się opcji -a), adresów URL (w domyślnej przeglądarce) i katalogów (w Finderze).

Przykładem może być

open /Users/Example/Desktop/example.rtf
Alexander
źródło
1
Jest to prawdopodobnie najłatwiejszy sposób otwierania plików tekstowych do edycji w edytorze graficznym z terminala.
David Thomas
4

Dla tych, którzy znajdą ten post:

Rozwiązaniem było użycie polecenia sudo open -t /path/file.txt

Strony podręcznika dla polecenia open pokazują również, jak wykonać inne czynności, takie jak wyświetlanie pliku w wyszukiwarce.

http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/open.1.html

wfbarksdale
źródło
10
Używanie sudojest niepotrzebne i niepożądane.
Chris Page
1
Chyba że plik jest niedostępny dla użytkownika inaczej. Ale ogólnie zgodził się.
Bobson
2
Właśnie próbowałem użyć tego polecenia z sudo do edycji /etc/hostsna Lionie i to po prostu nie działa (zgodnie z oczekiwaniami). Nie pozwala mi edytować pliku. Tylko sklonuj to. sudoW tym przypadku równie dobrze może być bez . Plik i tak zostanie oznaczony jako zablokowany . Aby naprawdę móc to zrobić, musisz najpierw otworzyć TextEdit w trybie root lub po prostu użyć innego edytora: apple.stackexchange.com/questions/20199/…
cregox
0

To nie jest pytanie programistyczne. Ale zrobiłem szybkie google i znalazłem tę stronę:

http://ss64.com/osx/

http://ss64.com/osx/pico.html pico: Prosty edytor tekstu

http://ss64.com/vi.html vi: Edytor tekstu

I ta strona wyjaśnia, jak korzystać z TextEdit z terminala.

http://www.tech-recipes.com/rx/2754/os_x_edit_file_using_textedit_as_root_superuser/


źródło
1
Żadne z tych łączy nie pokazuje, jak otworzyć plik w textEdit.
Ostatni link ma.
Absolutnie tak, dziękuję, że
Czy to działa? Bo nie mam doświadczenia z Mac OSX (Windows fan boy ^^)