如何从终端调用文本编辑器?


74

在Windows命令提示符下,我可以键入notepad helloworld.cpp,然后创建一个名为helloworld.cpp文件,并为我打开记事本。

Mac Terminal是否有类似的功能,最好使用Textmate或Textedit?

我正在使用Xcode开发人员工具运行Mac OS X Lion 10.7。

Answers:


57

有很多方法。尝试:

  1. vi <filename you want to save or open.cpp>
  2. pico
  3. Open /Applications/TextEdit.app <filename>

2
@Ceetang:在shell提示符下,键入“ man 1 open”以阅读有关此列表中第3点如何工作的详细信息。
2012年

1
我将如何为Windows编译应用程序(扩展名为.exe)?
Ceetang

1
微微是很好!+1
noelicus

2
被称为nano
Martin Braun

102
open -e <filename>

该选项-e用于<filename>通过TextEdit打开文件。


4
你可以先打电话touch <filename>之前open,如果该文件不存在。
汤姆·奥格

14

只需使用本文open <filename>所述的命令。它将打开一个与文件类型关联的应用。

使用open -e于打开/应用程序/文本编辑


7

关于此处先前的一些建议-您可以将opencommand与aflag结合使用以打开具有特定应用程序的文件:

open -a [appname] [filename]

但是如果[filename]不存在,则会显示错误the file doesn't exists或类似信息,并且不会按照您的要求创建所需文件。

将以下内容写入您的~/.bashrc文件(如果该文件不存在,则可以通过touch ~/.bashrc在终端内部写入来创建它):

open2()
{
  touch $2
  open -a $1 $2
}

并像这样使用它:

open2 [appname] [filename]

请注意,这appname是已安装的应用程序文件夹(/Applications)中的一个应用程序。

该命令touch将为您创建所需的文件(不用担心,如果该文件存在,它将不会删除/重置当前文件,只需将修改时间重新定义为当前时间即可)。


6

问题在于:

打开-e

要么

打开-TextEdit

是您无法控制TextEdit.app模式:纯文本或RichText。

例如,如果您尝试打开HTML文件,则TextEdit将按预期以RTF模式而不是纯文本模式打开它。然后切换到纯文本模式将不会显示HTML标记。
我找不到终端命令来激活“打开”选项:

忽略富文本命令

或“首选项”设置:

将HTML文件显示为HTML代码而不是格式化文本

据我所知,即使是osascript也无法解决问题。

不幸的是,因为TextEdit.app是肯定存在的唯一文本编辑器。并非所有Mac用户都安装了BBedit,TextMate或任何其他第三方编辑器,甚至更少的用户定义了“默认编辑器”。


4

如果您使用文本伴侣,则可以将其设置为与终端一起使用

ln -s /Applications/TextMate.app/Contents/Resources/mate ~/bin/mate

取自

http://manual.macromates.com/en/using_textmate_from_terminal.html

配对后,您可以在终端中输入以下内容

mate helloworld.cpp

如果您希望文本配合将文件夹中的所有文件显示为项目抽屉

mate .

1

转到首选项(⌘+,)并安装Shell支持。 像这儿

然后,您可以使用以下命令从终端打开任何文件:

open file.txt

要么

mate file.txt

0

对我来说,这个问题的答案是:

leafpad

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.