265

I frequently find that a Terminal command to open a file in TextEdit would be very handy. Does such a command exist on Mac OS X?

Allan
  • 101,432
wfbarksdale
  • 2,809

5 Answers5

361

open -a TextEdit filename should do the trick.

The -a flag specifies any application you want, so it's applicable to any number of situations, including ones where TextEdit isn't the default editor.

Other relevant options

  • -t opens in the default editor (i.e. if you use BBEdit, TextMate, etc.)
  • -e will open the file specifically in TextEdit
robmathers
  • 41,194
56

Direct, easy answer - add an alias to your ~/.bash_profile like:

alias textedit='open -a TextEdit'

Invoke it like:

textedit theFiletoEdit.txt

The difference between this and the other answer, is you can easily remember it when you want it. Typing text and Tab to autocomplete it will make it instantly available


For those with a bit more bash background, who want the reasoning without having to fuss with figuring it out:

  • The problem is that a trivial symlink (or its ilk, like a shell script redirect) to /Applications/TextEdit.app/Contents/MacOS/TextEdit causes a new instance of TextEdit to open the file you pass to it. This works, but does not give your expected Mac OS X default behavior. (if you try it, you'll see)

  • To get the default UI behavior, using the Mac built-in open command, with that '-a TextEdit' flag (that others mentioned) induces the Mac UI to have (any) currently running instance of TextEdit handle the call (with no inapropos 'sudo' needed for general case usage).

nohillside
  • 100,768
Matt S.
  • 671
9

The open command can be used to open files (in their default apps, unless using the -a flag), URLs (in your default web browser), and directories (in Finder).

An example would be

open /Users/Example/Desktop/example.rtf
Evan Kroske
  • 2,047
Alexander
  • 8,363
4

For those finding this post:

The solution was to use the command sudo open -t /path/file.txt

And the man pages for the open command also show how to do some other things like show the file in the finder.

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

wfbarksdale
  • 2,809
  • 13
    Using sudo is unnecessary and undesirable. – Chris Page Sep 26 '11 at 13:29
  • 1
    Unless the file isn't accessible to the user otherwise. But in general, agreed. – Bobson Mar 02 '12 at 12:12
  • 2
    Actually, I just tried using this command with sudo to edit /etc/hosts on Lion and it just doesn't work (as expected). It doesn't allow me to edit the file. Only clone it. Might as well go without the sudo, in this case. The file will be marked as locked anyway. To really be able to do so, have to first open the TextEdit in root mode, or just use a different editor: http://apple.stackexchange.com/questions/20199/how-do-i-open-a-file-as-root-in-textedit-on-lion – cregox May 02 '13 at 11:22
2

This is not a programming question. But I did a quick google and found this site:

http://ss64.com/osx/

http://ss64.com/osx/pico.html pico: Simple text editor

http://ss64.com/vi.html vi: Text Editor

And this site explains how to use TextEdit from terminal.

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