Liste der Argumente für die geplante Aufgabe

2927
loli

Wenn Sie die Aktion einer geplanten Aufgabe bearbeiten, gibt es die Option "Argumente hinzufügen".

Die Software, die ich gerade verwende, hat das Argument

-cp .\Acquisition.Jar et.EPC 

Ich habe schon eine Weile gegoogelt und konnte nicht finden, was -cpfunktioniert.

Gibt es irgendwo eine Liste dieser Argumente? Beziehen sie sich auf das verwendete Programm und wenn ja, wie finde ich die Liste?

2

2 Antworten auf die Frage

3
Dave

Das Argument gilt nur für die Software, nicht für den Taskplaner.

Ich verwende dies häufig beim Schreiben von Software. Es handelt sich im Wesentlichen um ein Flag / einen Befehl. Wenn mein Programm vom Taskplaner ausgeführt wird, wird ein Wert übergeben, z. B. ein Dateipfad und ein Befehl. Der Befehl sagt meinem Programm, was damit zu tun ist.

ZB habe ich eine Sicherungssoftware geschrieben, die vom Task-Scheduler ausgeführt wird. Der übergebene Parameter ist:

"path\file.bmup" -s 

In diesem Fall bedeutet -s, dass die GUI angezeigt wird und nicht nur im Hintergrund ausgeführt wird.

Oder es könnte sein

"path\file.bmup" -e 

In diesem Fall sendet es eine E-Mail, wenn das Programm beendet ist.

Was sie bedeuten - wenn die Entwickler keine Dokumentation bereitstellen, ist es sehr schwer zu wissen. Es gibt einige "Standards", die jedoch nur funktionieren, wenn die Menschen den Standards folgen. EG, -fbedeutet oft, forceaber es gibt keinen Grund, meine Software nicht lesen kann -falsFinnish language

Hast du ein Stichwort, um mich für das Finden dieser Argumente zu empfehlen? Ich habe versucht, mit "Argumenten" oder "Parametern" zu googeln, kann aber nichts finden. loli vor 8 Jahren 0
@loli kann sein. Es hängt davon ab, ob die Entwickler dies dokumentiert haben. Welche Software verwenden Sie? Dave vor 8 Jahren 0
@DavidPostill hat es gefunden. Aber im Allgemeinen weiß ich nicht, was ich suchen soll, um diese Argumente zu finden loli vor 8 Jahren 0
Sie verwenden die richtigen Wörter. Sie werden Argumente oder Parameter genannt ... Wenn Sie also nach java-Parametern "-cp" gesucht haben, hat dies möglicherweise geholfen Dave vor 8 Jahren 1
ah ja du hast recht. Ich habe Java nicht in die Suche aufgenommen, weil ich nicht wusste, dass es mit dem verwendeten Programm zusammenhängt, bis Sie meine Frage beantwortet haben :) loli vor 8 Jahren 0
@Dave "Java-Befehlszeile" gibt die Referenz als erste Übereinstimmung an;) DavidPostill vor 8 Jahren 1
2
DavidPostill

Was ist ein -cpArgument (Option)

Ihr Programm ist ein Java-Programm.

In diesem Fall müssen Sie sich bewusst sein, dass es Optionen und Argumente gibt, die unterschiedliche Entitäten sind.

Die Option -cp (kurz für -classpath) gibt eine Liste von Verzeichnissen, JAR-Dateien und ZIP-Archiven an, in denen nach Klassendateien gesucht werden soll.

Die anderen möglichen Optionen für ein Java-Programm sind in Java dokumentiert. - Startet eine Java-Anwendung .

Die Werte hinter dem Namen der JAR-Datei sind Argumente, die an die mainMethode übergeben werden. Sie müssen sich auf die Dokumentation der JAR-Datei beziehen, um die zulässigen Argumente und ihre Bedeutung zu sehen.


Die Java-Befehlszeile

Zusammenfassung

java [ options ] class [ arguments ]

java [ options ] -jar file.jar [ arguments ]

javaw [ options ] class [ arguments ]

javaw [ options ] -jar file.jar [ arguments ]

Optionen

  • Befehlszeilenoptionen Siehe Optionen.

Klasse

  • Der Name der Klasse, die aufgerufen werden soll.

file.jar

  • Der Name der JAR-Datei, die aufgerufen werden soll. Wird nur mit dem Befehl -jar verwendet.

Argumente

  • Die an die Hauptfunktion übergebenen Argumente.

...

Standardoptionen

...

-classpath classpath

-cp classpath

Gibt eine Liste von Verzeichnissen, JAR-Dateien und ZIP-Archiven an, die nach Klassendateien durchsucht werden sollen. Trennen Sie Klassenpfadeinträge durch Semikolons (;). Durch Angabe von -classpath oder -cp wird jede Einstellung der Umgebungsvariable CLASSPATH überschrieben.

Wenn -classpath und -cp nicht verwendet werden und CLASSPATH nicht festgelegt ist, besteht der Benutzerklassenpfad aus dem aktuellen Verzeichnis (.).

Als besondere Bequemlichkeit gilt ein Klassenpfadelement, das den Basisnamen * enthält, als Äquivalent zur Angabe einer Liste aller Dateien im Verzeichnis mit der Erweiterung .jar oder .JAR. Ein Java-Programm kann den Unterschied zwischen den beiden Aufrufen nicht erkennen.

Wenn das Verzeichnis mydir beispielsweise a.jar und b.JAR enthält, wird das Klassenpfadelement mydir / * zu A.jar: b.JAR erweitert, mit der Ausnahme, dass die Reihenfolge der JAR-Dateien nicht angegeben ist. Alle JAR-Dateien im angegebenen Verzeichnis, auch versteckte, werden in die Liste aufgenommen. Ein Klassenpfadeintrag, der einfach aus * besteht, wird zu einer Liste aller JAR-Dateien im aktuellen Verzeichnis erweitert. Die CLASSPATH-Umgebungsvariable, sofern definiert, wird in ähnlicher Weise erweitert. Eine Erweiterung der Klassenpfad-Platzhalter erfolgt, bevor die Java VM gestartet wird. Kein Java-Programm sieht Platzhalter, die nur durch Abfragen der Umgebung erweitert werden. Zum Beispiel durch Aufrufen von System.getenv ("CLASSPATH").

Source Java - Startet eine Java-Anwendung .

http://docs.oracle.com/javase/7/docs/technotes/tools/windows/java.html Genau das, wonach ich gesucht habe. Ich hoffe, dass diese leicht zu finden sind, wenn ich in Zukunft Argumente für eine andere Art von Software finden möchte loli vor 8 Jahren 0
Großartig. Sie sind nicht immer so leicht zu finden - die Suche nach "Programmbefehlszeile" ist normalerweise ein guter Ausgangspunkt. Ich wusste bereits genau, wonach ich suchte, als ich in Ihrer Frage eine `java`-Befehlszeile erkannte - ich war früher ein Java-Programmierer;) DavidPostill vor 8 Jahren 1
+1 obwohl @loli, könnte es gefährlich sein, anzunehmen, dass "-cp" dies immer bedeutet (in anderen Programmen, die möglicherweise nicht auf Java basieren). Dave vor 8 Jahren 0
@Dave `Kommandozeile" -cp "` liefert viele Ergebnisse für Unix `cp`: / DavidPostill vor 8 Jahren 1