> For the complete documentation index, see [llms.txt](https://docs.devolutions.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.devolutions.net/cli/de/fur-devops-und-administratoren/automate/non-interactive.md).

# Ohne Eingabeaufforderungen ausführen

Devolutions CLI in Skripten und Pipelines ohne Eingabeaufforderung ausführen, bei einer Frage fehlschlagen statt zu warten, Eingabeaufforderungen im Voraus beantworten und Änderungen mit --yes bestäti

Ein Skript, das auf eine Antwort wartet, die niemand gibt, hängt, bis der Auftrag das Zeitlimit erreicht. Devolutions CLI hat zwei getrennte Schutzmechanismen: **Eingabeaufforderungen**, bei denen es im Terminal eine Frage stellt, und **Bestätigungen**, bei denen ein Befehl, der Daten ändert, die Ausführung verweigert, bis Sie `--yes` hinzufügen. Diese Seite zeigt, wie Sie mit beiden umgehen.

## Die richtige Option wählen

<table><thead><tr><th width="260">AUSWÄHLEN</th><th>WAS PASSIERT</th><th>VERWENDEN, WENN</th></tr></thead><tbody><tr><td><code>--non-interactive</code> or <code>DEVO_NON_INTERACTIVE</code></td><td>Devolutions CLI stellt nie eine Frage. Ein Befehl, der eine Antwort braucht, die er nicht hat, schlägt fehl, statt zu warten.</td><td>Immer, in Pipelines und geplanten Skripten.</td></tr><tr><td><code>--answer</code> or <code>DEVO_PROMPT_ANSWERS</code></td><td>Devolutions CLI verwendet die Antworten, die Sie geben, der Reihe nach, statt zu fragen.</td><td>Sie wissen, dass ein Befehl eine Frage stellt, und Sie kennen die Antwort.</td></tr><tr><td><code>--yes</code> (auch <code>-y</code> oder <code>--confirmed</code>)</td><td>Bestätigt einen Befehl, der Daten ändert. Ohne sie verweigert der Befehl die Ausführung.</td><td>Das Skript erstellt, ändert oder löscht absichtlich etwas.</td></tr></tbody></table>

## Nie auf eine Antwort warten

Fügen Sie `--non-interactive` zu einem Befehl hinzu oder setzen Sie `DEVO_NON_INTERACTIVE` einmal für den ganzen Auftrag:

{% tabs %}
{% tab title="Bash" %}

```bash
export DEVO_NON_INTERACTIVE=1
```

{% endtab %}

{% tab title="PowerShell" %}

```powershell
$env:DEVO_NON_INTERACTIVE = '1'
```

{% endtab %}
{% endtabs %}

Jeder Wert schaltet es ein, außer `0`, `false` und `no`. Devolutions CLI verhält sich auch von selbst so, wenn seine Standardeingabe umgeleitet ist, was in einer Pipeline meist der Fall ist. Es ausdrücklich zu setzen macht das Verhalten überall gleich.

Wenn eine Frage nicht gestellt werden kann, schlägt der Befehl fehl, statt hängen zu bleiben, und Ihr Skript kann den Fehler melden.

## Eingabeaufforderungen im Voraus beantworten

Wenn Sie wissen, dass ein Befehl etwas fragen wird, geben Sie die Antwort mit `--answer`. Wiederholen Sie die Option für mehrere Eingabeaufforderungen. Devolutions CLI verwendet die Antworten in der Reihenfolge, in der die Fragen kommen:

```bash
devo <command> --answer <first-answer> --answer <second-answer>
```

Oder setzen Sie sie einmal in `DEVO_PROMPT_ANSWERS`, getrennt durch `;` oder durch Zeilenumbrüche. Antworten aus `--answer` werden zuerst verwendet, dann die aus der Variable.

```bash
export DEVO_PROMPT_ANSWERS="<first-answer>;<second-answer>"
```

Wie jede Art von Frage eine Antwort verwendet:

<table><thead><tr><th width="220">FRAGE</th><th>WAS ZU ANTWORTEN IST</th></tr></thead><tbody><tr><td><strong>Eine Auswahl in einer Liste</strong></td><td>Die Nummer der Auswahl, beginnend bei <code>0</code>, oder ihre Bezeichnung. Bezeichnungen unterscheiden nicht zwischen Groß- und Kleinschreibung. Eine Antwort, die zu keiner Auswahl passt, bricht die Eingabeaufforderung ab.</td></tr><tr><td><strong>Mehrere auszufüllende Felder</strong></td><td>Eine Antwort pro Feld, in der Reihenfolge, in der die Felder abgefragt werden.</td></tr><tr><td><strong>Eine Anmeldeinformation</strong></td><td>Die Antwort wird als Passwort verwendet.</td></tr><tr><td><strong>Eine Meldung</strong></td><td>Nichts: die Meldungen nehmen ihre Standardantwort und verwenden keine der Ihren.</td></tr></tbody></table>

{% hint style="warning" %}
Verwenden Sie `--answer` nicht für ein Passwort oder ein anderes Geheimnis: Es setzt den Wert auf die Befehlszeile. Melden Sie sich mit Optionen an, die das Geheimnis aus einer Umgebungsvariable oder einer Datei lesen. Siehe [Aus einer CI-Pipeline anmelden](/cli/de/fur-devops-und-administratoren/automate/ci-sign-in.md).
{% endhint %}

## Bestätigen Sie Änderungen mit --yes

Befehle, die Daten erstellen, ändern oder löschen, haben eine Option `--yes`, mit den Aliassen `-y` und `--confirmed`. Das ist keine Eingabeaufforderung: Ohne sie fragt der Befehl nichts, er stoppt mit einem Fehler (`confirmationRequired` oder `mutationConfirmationRequired`) und Exitcode `2`. `--non-interactive` bestätigt nichts für Sie.

Zum Beispiel, um ein Passwort aus einer Umgebungsvariable zu aktualisieren:

```bash
devo secret set password "<entry-name>" --value-env NEW_PASSWORD --yes
```

Um zu wissen, ob ein Befehl `--yes` braucht, prüfen Sie seine Optionen in [Befehle](/cli/de/referenz/commands.md).

{% hint style="danger" %}
`--yes` entfernt die letzte Prüfung vor einer Änderung. Manche Befehle, die sie akzeptieren, löschen Daten. Testen Sie Ihr Skript zuerst an einem Testtresor oder mit schreibgeschützten Befehlen.
{% endhint %}

## Gut zu wissen

* Eingabeaufforderungen und ihre Meldungen werden in die Standardfehlerausgabe geschrieben, nie in die Standardausgabe, damit sie sich nicht mit JSON-Ergebnissen vermischen. Siehe [Ergebnisse als JSON lesen](/cli/de/fur-devops-und-administratoren/automate/json-output.md).
* Die Anmeldung mit Gerätecode wartet auf die Genehmigung durch eine Person und passt daher nicht zu einem nicht interaktiven Auftrag. Siehe [Aus einer CI-Pipeline anmelden](/cli/de/fur-devops-und-administratoren/automate/ci-sign-in.md).
* Alle globalen Optionen sind unter [Globale Optionen](/cli/de/referenz/global-options.md) aufgeführt, und die Variablen unter [Umgebungsvariablen](/cli/de/referenz/environment-variables.md).

## Weiter

* [Sign in from a CI pipeline](/cli/de/fur-devops-und-administratoren/automate/ci-sign-in.md)
* [Read results as JSON](/cli/de/fur-devops-und-administratoren/automate/json-output.md)
* [Update a secret from a script](/cli/de/anleitungen/secrets/update-a-secret.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.devolutions.net/cli/de/fur-devops-und-administratoren/automate/non-interactive.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
