Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I've a simple batch script npp.bat to open a file in Notepad++

"C:\Program Files\(x86)\Notepad++\notepad++.exe" %1

Notepad++ launches with the file when I run npp <file_name&gt> but the command window waits for the application to exit. I don't want it to wait.

share|improve this question
up vote 7 down vote accepted

Use start instead:

start "" "command here"

Edit: Do not miss the first pair of empty quotes, this is the title of the process/window.

start <title> <command> <parameters>

See start /? for further details.

share|improve this answer
1  
That starts a new console window and the script runs there. I just want to start Notepad++ with the file and nothing else. Thanks in advance! – Abdulsattar Mohammed Jul 7 '10 at 10:54
2  
@CodingTales Be sure to include the first set of empty quotes. – heavyd Jul 7 '10 at 12:33
    
I missed the first "" and it didn't work. Thanks! – Abdulsattar Mohammed Jul 7 '10 at 21:05

I wanted to be able to do "npp file.txt" on the command prompt and be able to edit files using Notepad++. For this, I created a new folder, added it to Windows PATH, and created a file there called npp.bat with the following content:

@echo off
start "" "C:\Program Files\Notepad++\notepad++.exe" %1

Very useful when I'm working on the console and need to edit a file.

share|improve this answer
    
if your text editor is associated with txt files then won't it launch your text editor if you just type file.txt even without the npp? btw i have a similar setup with my text editors.. maybe even an npp.bat when I used notepad plus! You may want the %1 in quotes. in case the filename has a space, and you could experiment with a %* though no doubt you'd see if you had an issue an amend accordingly. – barlop Nov 13 '13 at 16:03

@Bobby method should work, If you directly calls the batch script ( double click ), the method will open a new command window. Instead use the following,

@echo off
start "C:\Program Files\Notepad++\notepad++.exe" blah.txt
cls
exit

If you replace blah.txt with %1, then you should pass the argument when you call the batch file.

share|improve this answer
2  
Missing the first set of quotes in the start command. That will open a new window with the title C:\Program Files\Notepad++\notepad++.exe and execute bla.txt – TheLQ Jul 7 '10 at 20:20
1  
Don't get me wrong, but 3 out of 4 lines of this script are unnecessary, in my eyes especially the exit. I hate people who put that into their scripts, because then I always have to restart the terminal from which I executed it. :/ – Bobby Dec 29 '10 at 8:06

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .