windows - 如何通过从命令行调用一些变量(如 edit 或 vi)在 Windows 中打开文本编辑器

标签 windows powershell cmd

我需要在当前工作中使用 Windows,而且我主要是 Ubuntu 和 Mac 用户。如何设置要在命令提示符中使用的变量快捷方式?

比如我要Sublime Text或当我在命令提示符下键入命令 viedit 时打开 TextPad 等其他文本编辑器。

我尝试了 doskey vi=textpad

但这只允许我打开程序,而不是我试图打开的文件。例如,如果我键入 textpad filename.txt,它会打开预期的文件进行编辑。但是当我设置 vi=textpad 的别名时,它只是将 TextPad 作为程序打开,而忘记了对我想要编辑的实际文件的引用。

最佳答案

你的问题中有标签 powershell,所以假设这是你通常阅读的命令提示符,你需要使用 Set-Alias cmdlet 或定义一个函数:

Set-Alias vi textpad

应该让你开始。

为避免每次启动新的命令提示符时都输入此命令,您应该将该命令插入到您的配置文件中。尝试使用 textpad $profile 来编辑启动配置文件,但请注意您可能需要先创建父文件夹,因为默认情况下它们不存在。命令 new-item -path $profile -itemtype file -force 将创建配置文件和任何父文件夹。

这是一个使用我喜欢的编辑器的测试示例:

PS C:\> set-alias vi 'C:\Program Files (x86)\eps13\bin\sendeps.exe'
PS C:\> vi c:\temp\t.txt

set-alias 不会让您包含任何参数;它只是给命令本身起了别名。如果您想将任何其他参数传递给您的编辑器,请改用函数。

关于windows - 如何通过从命令行调用一些变量(如 edit 或 vi)在 Windows 中打开文本编辑器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22130604/

相关文章:

windows - 删除 Trailing\in subst 命令

windows - svn:如何从 svn 命令行列出最后的标签?

windows - 如何从另一个 tcl 文件调用一个 tcl 文件

c++ - 在 C++ Win32 客户端/框架区域中进行图形和绘图

RegEx 在 Powershell 中匹配两个字符串之间的字符串

javac 响应 "not a file"但文件存在

bash - 带时间戳的 Mysql 转储

mysql - 如何为 AWS RDS 加载数据 infile mysql workbench?

javascript - 当我关闭 cmd 时,Heroku 中的 Node.js 应用程序崩溃

batch-file - 当他省略扩展名 .exe 以终止进程时,如何检查和更正用户输入?