Kann ich Dateien in TextEdit über das Terminal in Mac OS X öffnen?

168

Ich finde häufig, dass ein Terminal-Befehl zum Öffnen einer Datei in TextEdit sehr praktisch wäre. Gibt es einen solchen Befehl unter Mac OS X?

wfbarksdale
quelle
Ich versuche, Sublime Text über die Befehlszeile zu öffnen. Ich habe "-a / Applications / Sublime Text 2.app my_file.txt" geöffnet. Es funktioniert, aber jedes Mal, wenn ich eine Datei öffnen möchte, wird ein neues Fenster erstellt. Irgendeine Lösung?
Mohammad Moghimi
1
Wenn Sie wollen , dass es mit sudo, gota offen TextEdit im root - Modus zuerst
cregox
@ MohammadMoghimi Versuchen Sie es einfach mit dem sublimeBefehl.
Timothy Mueller-Harder

Antworten:

229

open -a TextEdit filename sollte den Trick machen.

Das -aFlag gibt jede gewünschte Anwendung an, sodass es auf eine beliebige Anzahl von Situationen anwendbar ist, einschließlich solcher, in denen TextEdit nicht der Standardeditor ist.

Andere relevante Optionen

  • -t wird im Standardeditor geöffnet (dh wenn Sie BBEdit, TextMate usw. verwenden)
  • -e öffnet die Datei speziell in TextEdit
Robmathers
quelle
2
Wahrscheinlich die beste Lösung.
Daviesgeek
Wenn Sie ein Programm wünschen, dessen Name Leerzeichen enthält, müssen Sie diese maskieren, z. B. -a Adobe \ Photoshop \ CS6 image.png
Choylton B. Higginbottom
Wie kann ich es mit SublimeText3 öffnen, das in / path / SublimeText3 verbleibt?
Smaragdhieu
3
In opender Bedienungsanleitung sehen Sie -e Causes the file to be opened with /Applications/TextEdit. Machen open -e filenameSie dasselbe und es ist einfacher.
DawnSong
Sind die verfügbaren Anwendungen als diejenigen definiert, in denen sie leben /Applications/?
Daniel Pendergast
39

Direkte, einfache Antwort - fügen Sie Ihrem ~ / .bash_profil einen Alias ​​hinzu wie:

alias textedit='open -a TextEdit'

Rufen Sie es wie folgt auf:

textedit theFiletoEdit.txt

Der Unterschied zwischen dieser und der anderen Antwort ist, dass Sie sich leicht daran erinnern können, wann Sie es wollen. Wenn Sie etwas eingeben textund Tabautomatisch vervollständigen, ist es sofort verfügbar


Für diejenigen mit ein bisschen mehr Bash-Hintergrund, die das Argumentieren wollen, ohne sich mit dem Herausfinden herumschlagen zu müssen:

  • Das Problem ist, dass ein trivialer Symlink (oder dessen Art, wie eine Shell-Skriptumleitung) dazu /Applications/TextEdit.app/Contents/MacOS/TextEditführt , dass eine neue Instanz von TextEditdie Datei öffnet, die Sie an sie übergeben. Dies funktioniert, führt jedoch nicht zum erwarteten Standardverhalten von Mac OS X. (Wenn Sie es versuchen, werden Sie sehen)

  • Wenn Sie das Standardverhalten der Benutzeroberfläche mithilfe des integrierten Mac- openBefehls mit dem "-a TextEdit" -Flag (das von anderen erwähnt wurde) abrufen möchten, veranlasst die Mac-Benutzeroberfläche, dass (eine) derzeit ausgeführte Instanz von TextEdit den Aufruf verarbeitet (ohne Inapropos). sudo 'wird für den allgemeinen Gebrauch benötigt).

Matt S.
quelle
Das Öffnen einer Datei in einer bereits laufenden textedit-Instanz funktioniert in Mojave nicht. Ich habe alle Flaggen ausprobiert.
Karl Pokus
6

Mit dem Befehl open können Sie Dateien (in ihren Standard-Apps, sofern nicht das Flag -a verwendet wird), URLs (in Ihrem Standard-Webbrowser) und Verzeichnisse (im Finder) öffnen.

Ein Beispiel wäre

open /Users/Example/Desktop/example.rtf
Alexander
quelle
1
Dies ist wahrscheinlich die einfachste Möglichkeit, Textdateien vom Terminal aus zur Bearbeitung in einem grafischen Editor zu öffnen.
David Thomas
4

Für diejenigen, die diesen Beitrag finden:

Die Lösung bestand darin, den Befehl zu verwenden sudo open -t /path/file.txt

In den Manpages für den Befehl open wird auch gezeigt, wie Sie die Datei im Finder anzeigen können.

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

wfbarksdale
quelle
10
Die Verwendung sudoist unnötig und unerwünscht.
Chris Seite
1
Es sei denn, die Datei ist für den Benutzer anderweitig nicht zugänglich. Aber im Allgemeinen einverstanden.
Bobson
2
Eigentlich habe ich gerade versucht, diesen Befehl mit sudo zu verwenden, um ihn /etc/hostsunter Lion zu bearbeiten, und er funktioniert einfach nicht (wie erwartet). Ich kann die Datei nicht bearbeiten . Nur klonen. Könnte sudoin diesem Fall auch ohne gehen . Die Datei wird trotzdem als gesperrt markiert . Um dies wirklich zu können, müssen Sie zuerst TextEdit im Root-Modus öffnen oder einfach einen anderen Editor verwenden: apple.stackexchange.com/questions/20199/…
cregox
0

Dies ist keine Programmierfrage. Aber ich habe schnell google gemacht und diese Seite gefunden:

http://ss64.com/osx/

http://ss64.com/osx/pico.html pico: Einfacher Texteditor

http://ss64.com/vi.html vi: Texteditor

Und diese Seite erklärt, wie man TextEdit vom Terminal aus benutzt.

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


quelle
1
Keiner dieser Links zeigt, wie die Datei in textEdit geöffnet wird.
Der letzte Link tut es.
Es ist absolut der Fall, danke für das Hinzufügen, Sie sind ein viel schnellerer Googler als ich.
Funktioniert es? Weil ich keine Erfahrung mit Mac OSX habe (Windows Fan Boy ^^)