Могу ли я открыть файлы в TextEdit из терминала в Mac OS X?


168

Я часто нахожу, что команда терминала, чтобы открыть файл в TextEdit была бы очень удобной. Существует ли такая команда в Mac OS X?


Я пытаюсь открыть Sublime Text из командной строки. Я сделал "открыть -a / Applications / Sublime Text 2.app my_file.txt". Это работает, но создает новое окно каждый раз, когда я хочу открыть файл. Любое исправление?
Мохаммад Могими


@MohammadMoghimi Попробуйте просто с помощью sublimeкоманды.
Тимоти Мюллер-Хардер

Ответы:


229

open -a TextEdit filename должен сделать свое дело.

-aФлаг указует любое приложение , которое вы хотите, так что это применимо к любому числу ситуаций, в том числе тех , в которых TextEdit не редактор по умолчанию.

Другие соответствующие варианты

  • -t открывается в редакторе по умолчанию (например, если вы используете BBEdit, TextMate и т. д.)
  • -e откроет файл специально в TextEdit

2
Наверное, лучшее решение.
Дэвисгик

Если вам нужна программа, в имени которой есть пробелы, вам нужно их экранировать, например, открыть -a Adobe \ Photoshop \ CS6 image.png
Чойлтон Б. Хиггинботтом

Как открыть его с SublimeText3, который находится в / path / SublimeText3?
Emeraldhieu

3
В openруководстве команды вы увидите -e Causes the file to be opened with /Applications/TextEdit. Так что open -e filenameделай то же самое и проще.
DawnSong

Определяются ли доступные приложения как живущие внутри /Applications/?
Даниэль Пендергаст

39

Прямой, простой ответ - добавьте псевдоним в ваш ~ / .bash_profile, например:

alias textedit='open -a TextEdit'

Вызовите это как:

textedit theFiletoEdit.txt

Разница между этим и другим ответом в том, что вы можете легко запомнить его, когда захотите. Ввод textи Tabавтозаполнение сделает его мгновенно доступным


Для тех, у кого немного больше опыта в bash, и тех, кто хочет рассуждать без суеты, чтобы выяснить это:

  • Проблема заключается в том, что тривиальная символическая ссылка (или ее аналог, как перенаправление сценария оболочки) /Applications/TextEdit.app/Contents/MacOS/TextEditзаставляет новый экземпляр TextEditоткрывать файл, который вы передаете ему. Это работает, но не дает ожидаемого поведения Mac OS X по умолчанию. (если вы попробуете, вы увидите)

  • Чтобы получить поведение пользовательского интерфейса по умолчанию, используя встроенную openкоманду Mac с этим флагом '-a TextEdit' (что упоминалось другими), побуждает пользовательский интерфейс Mac иметь (любой) работающий в данный момент экземпляр TextEdit для обработки вызова (без inapropos '). sudo 'необходимо для общего использования).


Открытие файла в уже запущенном экземпляре textedit не работает в mojave. Я перепробовал все флаги.
Карл Покус

6

Команда open может использоваться для открытия файлов (в их приложениях по умолчанию, если не используется флаг -a), URL-адресов (в веб-браузере по умолчанию) и каталогов (в Finder).

Примером будет

open /Users/Example/Desktop/example.rtf

1
Это, вероятно, самый простой способ открывать текстовые файлы для редактирования в графическом редакторе из терминала.
Дэвид Томас

4

Для тех, кто находит этот пост:

Решение было использовать команду sudo open -t /path/file.txt

И страницы руководства для команды open также показывают, как сделать некоторые другие вещи, например, показать файл в поиске.

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


10
Использование sudoненужно и нежелательно.
Крис Пейдж

1
Если файл не доступен для пользователя в противном случае. Но в целом согласился.
Бобсон

2
На самом деле, я просто попытался использовать эту команду с sudo для редактирования /etc/hostsна Lion, и она просто не работает (как и ожидалось). Это не позволяет мне редактировать файл. Только клонируй это. И sudoв этом случае можно обойтись и без . В любом случае файл будет помечен как заблокированный . Чтобы действительно это сделать, сначала нужно открыть TextEdit в корневом режиме или просто использовать другой редактор: apple.stackexchange.com/questions/20199/…
cregox

0

Это не вопрос программирования. Но я сделал быстрый Google и нашел этот сайт:

http://ss64.com/osx/

http://ss64.com/osx/pico.html pico: простой текстовый редактор

http://ss64.com/vi.html vi: Текстовый редактор

И этот сайт объясняет, как использовать TextEdit из терминала.

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


1
Ни одна из этих ссылок не демонстрирует, как открыть файл в textEdit.

Последняя ссылка делает.

Это действительно так, спасибо, что добавили, что вы намного быстрее, чем я.

Это работает? Потому что у меня нет опыта работы с Mac OSX (фанат Windows ^^)
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.