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

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

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

谢谢。


当前回答

你要创建一个别名,只需输入:

c:\>alias kgs kubectl get svc

Created alias for kgs=kubectl get svc

并使用别名如下:

c:\>kgs alfresco-svc

NAME           TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)   AGE
alfresco-svc   ClusterIP   10.7.249.219   <none>        80/TCP    8d

只需将以下alias.bat文件添加到您的路径。它只是在与自身相同的目录中创建额外的批处理文件。

  @echo off
  echo.
  for /f "tokens=1,* delims= " %%a in ("%*") do set ALL_BUT_FIRST=%%b
  echo @echo off > C:\Development\alias-script\%1.bat
  echo echo. >> C:\Development\alias-script\%1.bat
  echo %ALL_BUT_FIRST% %%* >> C:\Development\alias-script\%1.bat
  echo Created alias for %1=%ALL_BUT_FIRST%

创建的批处理文件名为kgs.bat的示例如下:

@echo off 
echo. 
kubectl get svc %* 

其他回答

Windows 10中的控制台别名

要定义控制台别名,请使用Doskey.exe创建宏,或使用AddConsoleAlias函数。

dos命令

doskey test=cd \a_very_long_path\test

还要在最后传递参数:doskey short=longname $*

添加控制台别名

AddConsoleAlias( TEXT("test"), 
                 TEXT("cd \\<a_very_long_path>\\test"), 
                 TEXT("cmd.exe"));

更多信息在这里控制台别名,Doskey,参数

因为你已经在你的路径中有notepad++.exe。在该文件夹中创建一个名为np的快捷方式,并将其指向notepad++.exe。

非常简单的自定义别名:

在系统的任何地方创建一个专门用于别名的新文件夹。创建一个新文件,命名为你想命名的别名,扩展名为.cmd。将所有命令写入文件,例如

cd /D D:\Folder
g++ -o run something.cpp

复制文件夹的路径。

>系统>关于>系统高级设置>环境变量…

现在在System variables部分中找到Path变量。单击它一次,然后单击Edit。现在单击New并粘贴复制的文本。

单击“确定”、“确定”和“确定”。重新启动Powershell/cmd提示符,瞧,您得到了持久的别名!您也可以使用相同的文件夹来创建其他别名,而无需再次更改Path变量!

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

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

工作得很好!

为了补充josh的回答,

您可以通过以下步骤使别名持久,

用DOSKEY命令创建一个.bat或.cmd文件。 运行regedit,进入HKEY_CURRENT_USER\Software\Microsoft\Command Processor 添加字符串值条目,名称为AutoRun和.bat/的完整路径。cmd文件。 例如,%USERPROFILE%\alias。在命令cmd中,用%USERPROFILE%替换路径的初始段对于多台机器之间的同步很有用。

这样,每次运行cmd时,都会加载别名。

对于Windows 10或Windows 11,请将该条目添加到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor中。

(对于Windows 11,还要注意默认情况下“终端应用程序”指向PowerShell。搜索“cmd”命令提示符。)

为了完整起见,这里有一个模板来说明可能有用的别名类型。

@echo off

:: Temporary system path at cmd startup

set PATH=%PATH%;"C:\Program Files\Sublime Text 2\"

:: Add to path by command

DOSKEY add_python26=set PATH=%PATH%;"C:\Python26\"
DOSKEY add_python33=set PATH=%PATH%;"C:\Python33\"

:: Commands

DOSKEY ls=dir /B $*
DOSKEY sublime=sublime_text $*  
    ::sublime_text.exe is name of the executable. By adding a temporary entry to system path, we don't have to write the whole directory anymore.
DOSKEY gsp="C:\Program Files (x86)\Sketchpad5\GSP505en.exe"
DOSKEY alias=notepad %USERPROFILE%\Dropbox\alias.cmd

:: Common directories

DOSKEY dropbox=cd "%USERPROFILE%\Dropbox\$*"
DOSKEY research=cd %USERPROFILE%\Dropbox\Research\

请注意,$*语法适用于目录字符串之后,也适用于带有参数的可执行文件之后。因此,在上面的示例中,用户定义的命令dropbox research指向与research相同的目录。 正如Rivenfall所指出的,包含一个允许方便地编辑别名的命令是一个好主意。cmd文件。参见上面的别名。如果您在一个cmd会话中,输入cmd重新启动cmd并重新加载别名。cmd文件。


当我在互联网上搜索这个问题的答案时,不知怎么的,讨论要么只集中在持久性上,要么只集中在DOSKEY的某些用法上。我希望在这里有人能从这两方面受益!


这里有一个.reg文件来帮助你安装别名。cmd。现在将它设置为上面建议的dropbox文件夹的示例。

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Command Processor]
"AutoRun"="%USERPROFILE%\\alias.cmd"

对于单用户应用程序,上面的方法就可以了。不过,也有一些情况需要检查是否存在别名。CMD首先存在于注册表项中。参见下面的示例。

C:\Users\Public\init.CMD文件承载潜在的跨用户配置:

@ECHO OFF
REM Add other configurations as needed
IF EXIST "%USERPROFILE%\alias.cmd" ( CALL "%USERPROFILE%\alias.cmd" )

注册表项应相应更新为C:\Users\Public\init.CMD或使用.reg文件:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Command Processor]
"AutoRun"="C:\\Users\\Public\\init.cmd"