我已经在环境变量的路径中添加了notepad++.exe。

现在在命令提示符中,notepad++.exe filename.txt打开filename.txt。但我想用np filename。txt来打开文件。

我尝试使用DOSKEY np=notepad++。但它只是把一个已经打开的notepad++放在前面,而不打开文件。我怎样才能让它打开文件呢?

谢谢。


当前回答

使用doskey是正确的方法,但是当命令提示符窗口关闭时,它会重置。您需要将这一行添加到类似.bashrc的等价文件中。所以我做了以下事情:

将“C:\Program Files (x86)\ notepad++”添加到系统路径变量 复制notepad++.exe(当然,在同一个文件夹中),并将其重命名为np.exe

工作得很好!

其他回答

扩展罗里休伊特的回答。

在DOSKEY上使用.cmd文件的一个优势是,这些“别名”可以在其他shell中使用,如PowerShell或WSL (Linux的Windows子系统)。

在bash中使用这些命令的唯一缺点是可能需要更多的设置,因为在调用“别名”之前可能需要进行一些路径操作。

我有vs.cmd,这是我在Visual Studio编辑文件的“别名”

@echo off
if [%1]==[] goto nofiles
start "" "c:\Program Files (x86)\Microsoft Visual Studio 
11.0\Common7\IDE\devenv.exe" /edit %1
goto end
:nofiles
start "" "C:\Program Files (x86)\Microsoft Visual Studio 
11.0\Common7\IDE\devenv.exe" "[PATH TO MY NORMAL SLN]"
:end

它会点燃VS(在这种情况下VS2012 -但调整口味)使用我的“正常”项目,没有文件,但当给出一个文件时,将试图附加到一个运行的VS打开该文件“在该项目中”,而不是开始一个新的VS实例。

为了从bash使用这个,我然后添加了一个额外的间接级别,因为“vs Myfile”并不总是工作

alias vs='/usr/bin/run_visual_studio.sh'

在调用vs.cmd之前调整路径

#!/bin/bash
cmd.exe /C 'c:\Windows\System32\vs.cmd' "`wslpath.sh -w -r $1`"

这样我就可以

vs SomeFile.txt

在命令提示符中,Power Shell或bash,它在我运行的Visual Studio中打开进行编辑(当我在VS中编辑了几个小时时,这只是让我可怜的大脑不必处理VI命令或其他类似的命令)。

我的快速而肮脏的解决方案是在PATH中已经存在的任何目录中添加一个BAT文件。

例子:

@ECHO OFF
doskey dl=aria2c --file-allocation=none $*
aria2c --file-allocation=none %**

因此,第一次运行“dl”时,它将执行bat文件,但从第二次开始,它将使用别名。

使用doskey是正确的方法,但是当命令提示符窗口关闭时,它会重置。您需要将这一行添加到类似.bashrc的等价文件中。所以我做了以下事情:

将“C:\Program Files (x86)\ notepad++”添加到系统路径变量 复制notepad++.exe(当然,在同一个文件夹中),并将其重命名为np.exe

工作得很好!

你需要传递参数,试试这个:

doskey np=notepad++.exe $*

编辑(回应Romonov的评论)Q:有什么方法可以让命令提示符记住,这样我就不必每次打开新的命令提示符时都运行这个了?

Doskey是一个由命令处理器(例如cmd.exe)解释的文本命令,它不能知道在其他进程(特别是还没有启动的进程)中修改状态。

使用doskey设置初始命令shell环境的人通常使用/K选项(通常通过快捷方式)来运行一个批处理文件,该文件执行所有常见的设置(如-设置窗口的标题,颜色等)。

cmd.exe /K env.cmd

env.cmd:

title "Foo Bar"
doskey np=notepad++.exe $*
...

此外,您还可以创建别名。在您的路径(例如C:\Windows)中使用命令

@echo %2 %3 %4 %5 %6 > %windir%\%1.cmd

一旦你这样做了,你可以这样做:

alias nameOfYourAlias commands to run 

然后你可以输入命令行

nameOfYourAlias 

这将执行

commands to run 

但对我来说,最好的方法是添加一个程序的路径。

setx PATH "%PATH%;%ProgramFiles%\Sublime Text 3" /M 

现在我崇高地奔跑

subl index.html