Wie starte ich Notepad ++ von cmd aus?

92

Ich kann den normalen Editor von cmd aus starten.

C:\Windows>notepad

Ich kann es auch über die Run-Eingabeaufforderung starten.

  1. Win + R
  2. Notizblock
  3. Eingeben

Ich möchte in der Lage sein, das selbe mit dem Notizblock ++ zu tun. Ich kann es von der Run-Eingabeaufforderung aus starten, aber ich kann es nicht von cmd aus starten.

Ich kann auch eine bestimmte Datei in Notepad von cmd aus öffnen.

C:\Windows>notepad d:\mytext.txt

Ich möchte in der Lage sein, das selbe mit Notizblock ++ zu tun.

Ist das möglich und was kann ich tun, um dies zu ermöglichen?

Samir
quelle
1
In Windows Vista, Windows 7 und 8 können Sie das Startmenü-Suchfeld wie den Befehl run verwenden. Keine Notwendigkeit, Win + R zu drücken. Drücken Sie Win und geben Sie das Suchfeld ein. Versuch es!
Kamil
(Nicht genügend Mitarbeiter, um zu antworten). Wenn Sie eine Datei öffnen möchten, deren Erweiterung mit NotePad ++ verknüpft ist, geben Sie einfach den vollständigen Dateinamen ein: d:\mytext.txtund sie wird in der Standard-App geöffnet. Sie können CL-Argumente nicht übergeben, aber schnell genug, wenn Sie nur die Datei öffnen möchten
cbuchart

Antworten:

66

Sie können C:\Program Files (x86)\Notepad++Ihrer PATHUmgebungsvariablen hinzufügen .

Sie könnten beispielsweise Folgendes an der Eingabeaufforderung ausführen:

set PATH=%PATH%;C:\Program Files (x86)\Notepad++

Weitere Optionen finden Sie unter Was sind PATH- und andere Umgebungsvariablen und wie kann ich sie festlegen oder verwenden?

Der Hochstapler
quelle
Vielen Dank! Es funktioniert jetzt. Jetzt kann ich notepad++ %userprofile%\desktop\testfile.txtwas schönes machen. Ich habe dafür das Dialogfeld Umgebungsvariablen verwendet. Wie lautet die Syntax zum Entfernen einer Umgebungsvariablen mit dem Befehl set? Ich konnte keine spezifischen Schalter oder Syntax dafür finden. Nicht auf dem von Ihnen angegebenen Link und nicht auf der Computer Hope-Website.
Samir
1
@Sammy: Das Entfernen eines einzelnen Verzeichnisses aus der PATHVariablen erfolgt vermutlich am besten über die GUI. Ich weiß nicht, wie ich es schnell von der Kommandozeile entfernen kann. Wenn Sie eine Umgebungsvariable vollständig entfernen möchten , können Sie sie verwenden set something=, ich rate Ihnen jedoch nicht, dies zu tun PATH.
Der Hochstapler
Ich habe einen Pfadbefehl gefunden . Ich verstehe, dass ich ein Semikolon verwenden soll, um einen Pfad in der PATH-Variablen zu löschen? ... Ich bin nicht sicher, wie.
Samir
Durch Verwendung von werden path ;die Suchpfadeinstellungen für die aktuelle Instanz von cmd gelöscht. Die Suchpfade werden nicht aus der PATH-Variablen entfernt. Durch Öffnen eines neuen cmd-Fensters werden die Suchpfadeinstellungen wiederhergestellt. Na ja, dann werde ich wohl die GUI benutzen.
Samir
5
Dies ist erwähnenswert: "Mit SET vorgenommene Änderungen bleiben nur für die Dauer der aktuellen CMD-Sitzung erhalten." Dies kann hier gefunden werden . Der Befehl Set wird zum Anzeigen, Festlegen oder Entfernen von CMD-Umgebungsvariablen verwendet. Mit dem Befehl Set kann also die gesamte Variable entfernt werden, in diesem Beispiel die Variable PATH. Und wieder wird es nicht dauerhaft von Windows entfernt. Sie gilt nur für die Dauer der CMD-Sitzung. Um eine Umgebungsvariable von CMD dauerhaft festzulegen, sollte stattdessen der Befehl Setx verwendet werden. Entweder das oder GUI.
Samir
125

Obwohl sich das Notepad ++ - Verzeichnis nicht in Ihrem Pfad befindet, können Sie den folgenden Befehl verwenden, um das Programm an der Eingabeaufforderung auszuführen:

start notepad++

Führen Sie Folgendes aus, um eine Datei in Notepad ++ zu öffnen:

start notepad++ <filename>
sudha jallu
quelle
9
Dies beantwortet nicht nur die ursprüngliche Frage, es ist auch eine sehr clevere Lösung, die sofort funktioniert, ohne dass Sie etwas einrichten müssen. Hat super für mich funktioniert.
Sergio Acosta
11
Liebe es. Alles zum PATH hinzuzufügen ist eine schreckliche Lösung für Windows. Was nicht klar ist, ist, wo START nach möglichen Befehlen sucht, wenn es nicht der Pfad ist. Durchsucht es das im Startmenü installierte Zeug?
user10550
und es funktioniert auch, wenn Sie in einer Cygwin-Shell sind: Cygstart Notepad ++
Laika
1
Genial! Ich benutze dazu nach der Suche einen String mit findstr /spim /c:"SomeString" *.*.
Paul Vargas
@ user10550 Ich bin mir ziemlich sicher, dass "Start" Referenzen in Bibliotheken enthält, bei C:\Users\username\AppData\Roaming\Microsoft\Windowsdenen die Variable "$ PATH" sehr unterschiedlich ist. Sie können tatsächlich angeben, was Start -> Suchreferenzen. Weitere Details
Kolob Canyon
20

Ich würde nicht meine PATHnur für die Verwendung eines einzigen Werkzeugs überladen wollen .

Eine Alternative ist die Verwendung eines alternativen Texteditors als 100% iger Ersatz für den hier mit vielen Details Notepaderläuterten Text . Eine weitere Beschreibung mit einem speziellen Editor-Startprogramm finden Sie hier . Ein weiterer Launcher auf Github .Notepad++

Eine weniger invasive Alternative ist eine cmdDatei wie diese:

"C:\Programme\Notepad++\notepad++.exe" %*

Diese Datei muss sich irgendwo entlang der vorhandenen befinden PATH. Ich habe tatsächlich alle meine Tools in einem gemeinsamen UTILVerzeichnis abgelegt , das Teil von ist PATH.

Axel Kemper
quelle
Was meinst du mit "cmd file"? Und was ist mit dem Sternchen und dem Prozentzeichen? Welche Datei muss sich "entlang" des PFADS befinden? (Es ist nicht so, als würde es irgendwo hingehen.) Wie nutzt du UTIL? Als ich das letzte Mal nachgesehen habe, gab es keine Variable namens UTIL. Ist dies etwas, das Sie selbst erfunden und dem System manuell hinzugefügt haben? Können Sie etwas davon erklären? Und geben Sie mir vielleicht ein konkretes Beispiel, mit dem ich arbeiten und hoffentlich davon lernen kann? Oder sind Sie nur hier, um damit zu prahlen, wie Sie die Befehlszeile kennen? Ich will nicht unhöflich sein oder so, ich sage nur, wie es ist. Wir haben alle unterschiedliche Fähigkeiten.
Samir
2
Eine cmd-Datei kann die Textskriptdatei npp.cmd sein, die den Befehl als einzelne Textzeile enthält. Wenn Sie ein Verzeichnis c: \ util erstellen und die Skriptdatei darin ablegen, erweitern Sie Ihren PATH um c: \ util. Von da an können Sie Notepad ++ aufrufen, indem Sie "npp" eingeben. % * steht für "alle Kommandozeilenargumente".
Axel Kemper
1
Eine cmd-Datei wird oft als "Batch-Datei" bezeichnet. In den Tagen von MS-DOS war die Erweiterung immer .BATaber heutzutage ist es oft .cmd. Die Befehle in der Datei werden von cmd.exeder Befehlszeilen-Shell selbst ausgeführt.
Steveha
Beachten Sie, dass in PowerShell die Syntax zum Aktualisieren der Umgebungsvariablen PATH etwas anders ist. Stackoverflow.com/a/1333717/47226
Aaron Hoffman
1
Es sieht so aus, als ob Ihr Link zum Artikel über das Ersetzen von Notepad bereits fehlerhaft ist.
RobH
8

Dies ist, was ich getan habe, auf diese Weise müssen Sie notepad++ Create np.batfile mit diesem Befehlssatz nicht eingeben

@echo off
start "" "C:\Program Files (x86)\Notepad++\notepad++.exe" %*

platzieren np.batDatei inc:\Windows

Öffnen Sie die Eingabeaufforderung und geben Sie npoder ein np myfile.txtund drücken Sie die Eingabetaste.

Nayana Adassuriya
quelle
Das Verwenden von "" start als Präfix für den Befehl verhindert, dass die Eingabeaufforderung gesperrt wird, wenn noch kein Editor ++. Exe ausgeführt wird.
Jeremy Murray
ich habe eine 'edit.bat'-datei mit dem inhalt' start notepad ++% 1 'erstellt - macht genau das, was ich brauche, um im rahmen einer cmd-sitzung zu bearbeiten.
TheRiley
7

Ich habe die Antworten von Axel Kemper kombiniert und einige Extras hinzugefügt, um einen permanenten Befehl zu erstellen, den Sie beliebig benennen können.

Zuerst habe ich einen extra Ordner angelegt. In meinem Fall: "C: \ Users \ Hansel \ CmdFiles" . In diesem Ordner habe ich über das Rechtsklick-Menü -> Neu -> Textdokument eine neue Textdatei erstellt. Bearbeiten Sie das Textdokument mit Notepad oder Notepad ++ und geben Sie den folgenden Code in die TXT-Datei ein:

@echo off
"C:\Software\Notepad++\notepad++.exe" %*

Dann müssen Sie die Datei in Ihren persönlichen Befehl umbenennen, zum Beispiel "npp.cmd".

Nebenbei bemerkt: @echo off verhindert , dass der Befehl an der Eingabeaufforderung ausgegeben wird .

Die Verknüpfung zwischen den Anführungszeichen kann auf eine beliebige ausführbare Datei verweisen.

*% ** stellt sicher, dass alles, was Sie nach dem Befehl npp eingeben (z. B. " npp nonsense.txt "), nach dem ursprünglichen Befehl in Anführungszeichen gesetzt wird.

Dann müssen Sie eine "Umgebungsvariable" bearbeiten, in diesem Fall den sogenannten PATH (diese Variable enthält die Ordner, in denen Windows nach Befehlen und ausführbaren Dateien sucht). Um den Ordner zu Ihrem PFAD hinzuzufügen, drücken Sie die Windows-Taste, um das Startmenü aufzurufen, und geben Sie "Umgebungsvariablen für Ihr Konto bearbeiten" ein . Erstellen Sie unter "Benutzervariablen für Hansel" eine neue "Pfad" -Variable, falls diese nicht vorhanden ist, oder bearbeiten Sie die alte "Pfad" -Variable, falls vorhanden.

Wenn Sie eine neue PATH-Variable erstellen , sollte der Variablenwert wie folgt lauten: C: \ Users \ Hans \ CmdFiles

Wenn Sie eine alte PATH-Variable bearbeiten, sollte der Variablenwert lauten: oldstuff ; C: \ Users \ Hans \ CmdFiles ( Semikolon beachten) .

Windows sucht nun nach Befehlen im Ordner "C: \ Users \ Hansel \ CmdFiles" und Sie können diesem Ordner ganz einfach neue Befehle hinzufügen!

Hänsel
quelle
8
Sie benötigen keinen @ECHO OFFeinzeiligen Befehl. Das @Unterdrückungsecho gilt nur für diese Leitung, genau so, @"C:\Software\Notepad++\notepad++.exe" %*wie Sie es möchten.
Clement Cherlin
3

Eine einfache Möglichkeit, ein unter Windows installiertes Programm über den Befehl auszuführen, ist:

  1. Suchen Sie den Speicherort von notepad ++ .exe und erstellen Sie eine Verknüpfung im Installationsverzeichnis.

  2. Kopieren Sie die Verknüpfung zu C: / windows / system 32 und fügen Sie sie ein.

  3. Jetzt können Sie 'Win + R' drücken und den Namen der Verknüpfung eingeben. Alles erledigt.

PS: In meinem Fall habe ich die Verknüpfung "notepadpp" (oder sogar "nppp") genannt, damit ich für das Symbol "+" nicht zweimal "shift + =" drücken muss

Extrem einfach und leicht, und es ist leicht, die Verknüpfung zu löschen. Sie müssen nicht einmal den Pfad, die Registrierung, ändern

Ein gutherziger Internetnutzer
quelle
2

Eine Möglichkeit besteht darin, diesen Registrierungsschlüssel zu ändern:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\Notepad++.exe]

Sie können eine gezippte .reg-Datei von Donn Felker herunterladen , mit der Sie eine Datei mit nur einer nVerknüpfung öffnen können .

Ich habe das REGEN , bevor es ausgeführt wird und um sicherzustellen , dass der Pfad zu Notepad ++ korrekt ist (zB C:\Program Files (x86)) und ich änderte auch die Verknüpfung nstatt n.

Doppelklicken Sie dann, um zu Ihrer Registrierung hinzuzufügen.

Hugo
quelle
2

Um ein Programm mit einem kurzen Namen von der Befehlszeile aus auszuführen, können Sie mit dem folgenden Befehl einen Alias ​​für dieses Programm erstellen doskey:

doskey alias="drive:\path to program\executable" $*

Beispielsweise können Sie nach dem Ausführen des Befehls
doskey notepad++="C:\Program Files (x86)\Notepad++\notepad++.exe" $*
die Textdatei mit Notepad ++ von öffnen notepad++ textfile. Natürlich können Sie auch einen kürzeren Alias ​​als nppoder verwenden n++.

Sie können auch einen Alias ​​für einen Pfad erstellen, den Sie häufig öffnen:

doskey home=cd C:\Users\myprofile

Leider können Sie diesen Alias ​​im Pfad nicht verwenden. Wenn Sie ausführen doskey home=C:\Users\myprofileund dann in die Befehlszeile eingeben cd homeoder start home\myfileeine Fehlermeldung erhalten.

Um Ihre Aliase bei jeder Ausführung automatisch zu erstellen, können Sie sie wie folgt cmdin die Batch-Datei einfügen autorun.cmdund im Registrierungseintrag festlegen:

HKCU\Software\Microsoft\Command Processor\AutoRun

oder

HKLM\Software\Microsoft\Command Processor\AutoRun

Links zu den Artikeln:
Console Aliases
Command Processor \ AutoRun

Paola Captanovska
quelle
0

In PowerShell:

$ENV:Path="$ENV:Path;C:\Program Files (x86)\Notepad++"
Raúl Salinas-Monteagudo
quelle