我已经添加了notepad++.exe
给我在环境变量路径。
现在,在命令提示符下, notepad++.exe filename.txt
打开filename.txt
。 但我想做到这np filename.txt
打开该文件。
我尝试使用DOSKEY np=notepad++
。 但它仅仅是为大家带来最前沿已经打开的记事本+ +,而无需打开该文件。 我怎样才能使它打开文件?
谢谢。
我已经添加了notepad++.exe
给我在环境变量路径。
现在,在命令提示符下, notepad++.exe filename.txt
打开filename.txt
。 但我想做到这np filename.txt
打开该文件。
我尝试使用DOSKEY np=notepad++
。 但它仅仅是为大家带来最前沿已经打开的记事本+ +,而无需打开该文件。 我怎样才能使它打开文件?
谢谢。
为了增加约什的答案,
你可以做别名(ES) 持续下面的步骤,
DOSKEY
命令。 HKEY_CURRENT_USER\Software\Microsoft\Command Processor
添加名为字符串值项AutoRun
和你的.bat / .cmd文件的完整路径。
例如, %USERPROFILE%\alias.cmd
,替换与该路径的初始段%USERPROFILE%
为多台机器之间同步是有用的。
这样一来,每次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
。 alias.cmd
文件。 见alias
以上。 如果你是在一个cmd会话中,输入cmd
重启cmd并重新加载alias.cmd
文件。 当我在网上搜索了一个问题的答案,不知何故讨论要么专注于持续性或只只DOSKEY的一些使用。 我希望有人会从这两方面来这里共同受益!
这里有一个.reg
文件来帮助您安装alias.cmd
。 现在我们设置为例收存箱文件夹上面建议。
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Command Processor]
"AutoRun"="%USERPROFILE%\\alias.cmd"
你需要传递的参数,试试这个:
doskey np=notepad++.exe $*
编辑 (回应Romonov的评论)问: 有什么办法可以让命令提示符记得,所以我没有这个,我打开一个新的命令提示符下运行每次?
doskey
是命令处理器(例如,CMD.EXE)解释的文本命令,它无法知道一些其他进程修改状态(尤其是一个尚未开始)。
使用人doskey
设置初始命令shell环境通常使用/K
选项(通常是通过快捷方式)来运行一个批处理文件,它完成了所有的常用的设置(喜欢-集窗口的标题,颜色等)。
cmd.exe /K env.cmd
env.cmd:
title "Foo Bar"
doskey np=notepad++.exe $*
...
如果你只是进行一些简单的命令,你可以按照下列步骤操作:
或许矫枉过正,但不像从@Argyll的(否则优秀)的答案,这解决了每次这种负载的问题。
举例来说,我有一个名为dig2.bat在它下面的文件:
@echo off
echo.
dig +noall +answer %1
您的NP文件只会有以下几点:
@echo off
echo.
notepad++.exe %1
FWIW,我有我的C约20别名(独立.bat文件):\别名目录 - 我只是在必要时创建新的。 也许不是最巧妙的,但它工作正常。
更新 :每从用户@Mav一个很好的建议,它甚至更好使用%*,而不是1%,这样你就可以将多个文件到命令,例如:
@echo off
echo.
notepad++.exe %*
这样一来,你可以这样做:
np c:\temp\abc.txt c:\temp\def.txt c:\temp\ghi.txt
它会打开所有3个文件。
既然你添加记事本++。exe文件到您的PATH变量,这是额外的简单。 创建一个名为您的System32文件夹中文件np.bat
用下面的代码:
@echo off
call notepad++.exe %*
的%*
沿着你给的所有参数传递np
命令到notepad++.exe
的命令。
编辑:您将需要管理员权限将文件保存到System32文件夹中,这是一个有点靠不住的我。 我刚刚创建的文件别的地方,它手动移动到System32中。
或者您可以使用cmder
它可以让你添加别名,就像Linux的:
alias subl="C:\Program Files\Sublime Text 3\subl.exe" $*
此外,您还可以创建在路径的alias.cmd(例如C:\ Windows)中使用的命令
@echo %2 %3 %4 %5 %6 > %windir%\%1.cmd
一旦你这样做,你可以这样做:
alias nameOfYourAlias commands to run
之后,你可以在comman行中键入
nameOfYourAlias
这将执行
commands to run
但对我来说最好的办法就是加入了PROGRAMM的路径。
setx PATH "%PATH%;%ProgramFiles%\Sublime Text 3" /M
现在我跑崇高的
subl index.html
要定义控制台的别名,使用Doskey.exe
创建一个宏,或者使用AddConsoleAlias
功能。
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 , 参数
你想通过简单的输入来创建一个别名:
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 %*
事实上,我会去你一筹,让你在,因为我习惯在Amiga上进行编程,我用一个小技巧。 在您使用任何新的系统,无论是个人或专业,第一步是创建两个文件夹:C:\ BIN和C:\批次。 然后修改路径语句在订单C开始把两个:\批; C:\ BIN;路径的其余部分。
已经做了,如果你有,你需要访问只需将它们复制到C小遥遥实用程序:\ bin文件夹,他们是在你的路径。 \ batch文件夹中的文件C前后的路会发现:暂时覆盖这些任务,你可以用相同的名称作为可执行文件到C添加一个批处理文件\ BIN。 它应该包括任何你可能永远需要做的。
当然,这些天的规范正确的方式做,这将是创建一个符号交界处的文件,但同样的原则也适用。 有额外的奖励,以及一点点额外的。 如果你想要把东西在的东西已经在路径冲突,把它在C系统:\ BIN或C:\批处理文件夹就干脆越俎代庖原-让你暂时或永久覆盖的东西,或重命名的东西你更舒适的名字 - 实际上不改变原来的。
扩展在roryhewitt答案。
使用.cmd文件的过DOSKEY一个优点是,这些“别名”然后在其他炮弹如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再加入额外的间接水平,因为“与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
在一个命令提示符下,电源外壳或bash和它在我运行Visual Studio进行编辑(这只是节省了我的大脑穷人不必处理VI命令或一些这样的,当我刚刚在VS编辑为小时)打开。
该解决方案是不是一个恰当的一个,但在某些场合供应的目的。
首先创建一个文件夹并将其添加到您的系统路径。 转到您想要为其创建别名任何程序的可执行文件。 右击并发送到桌面(创建快捷方式)。 重命名该快捷方式到任何别名舒适。 现在,把你的文件夹中的快捷方式和地点。
从运行的提示,你可以直接键入该快捷方式的名称,你可以有计划为你打开。 但是,从命令提示符下,你需要追加.LNK和回车键,该程序将被打开。
既然你已经有了notepad++.exe
在您的路径。 创建该文件夹命名为快捷np
,它指向notepad++.exe
。
首先,你可以创建一个名为np.cmd文件,并把它夹在哪个路径搜索列表英寸 然后,编辑np.cmd文件,如下:
@echo off
notepad++.exe
使用DOSKEY是这样做的正确的方式,但在关闭命令提示符窗口将其重置。 你需要该行添加到类似的.bashrc等同。 所以,我做了以下内容:
工作就好了!