# Festlegen einer Standardshell und eines Arbeitsverzeichnisses

Lege die Standardeinstellungen fest, die für alle Aufträge im Workflow oder für alle Schritte in einem Auftrag gelten sollen.

## Übersicht

Verwende `defaults`, um eine `map` der Standardeinstellungen zu erstellen, die für alle Aufträge im Workflow gelten. Du kannst auch Standardeinstellungen festlegen, die nur für einen Job verfügbar sind. Weitere Informationen findest du unter [`jobs.<job_id>.defaults`](/de/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_iddefaults).

Wenn mehr als eine Standardeinstellung mit dem gleichen Namen definiert ist, verwendet GitHub die spezifischste Standardeinstellung. Beispielsweise wird eine in einem Auftrag definierte Standardeinstellung die gleichnamig definierte Standardeinstellung in einem Workflow überschreiben.

## Festlegen der Standardshell und des Arbeitsverzeichnisses

Du kannst `defaults.run` verwenden, um Standardoptionen für `shell` und `working-directory` für alle [`run`](/de/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)-Schritte in einem Workflow bereitzustellen. Du kannst auch Standardeinstellungen für `run` festlegen, die nur für einen Auftrag verfügbar sind. Weitere Informationen findest du unter [`jobs.<job_id>.defaults.run`](/de/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_iddefaultsrun). In diesem Schlüsselwort kannst Du keine Kontexte oder Ausdrücke verwenden.

Wenn mehr als eine Standardeinstellung mit dem gleichen Namen definiert ist, verwendet GitHub die spezifischste Standardeinstellung. Beispielsweise wird eine in einem Auftrag definierte Standardeinstellung die gleichnamig definierte Standardeinstellung in einem Workflow überschreiben.

### Beispiel: Festlegen der Standardshell und des Arbeitsverzeichnisses

```yaml
defaults:
  run:
    shell: bash
    working-directory: ./scripts
```

## Festlegen von Standardwerten für einen bestimmten Auftrag

Verwende `jobs.<job_id>.defaults`, um eine `map` mit Standardeinstellungen zu erstellen, die für alle Schritte im Auftrag gelten. Du kannst auch Standardeinstellungen für den gesamten Workflow festlegen. Weitere Informationen findest du unter [`defaults`](/de/actions/using-workflows/workflow-syntax-for-github-actions#defaults).

Wenn mehr als eine Standardeinstellung mit dem gleichen Namen definiert ist, verwendet GitHub die spezifischste Standardeinstellung. Beispielsweise wird eine in einem Auftrag definierte Standardeinstellung die gleichnamig definierte Standardeinstellung in einem Workflow überschreiben.

## Festlegen der Standardshell und des Arbeitsverzeichnisses für einen Job

Verwende `jobs.<job_id>.defaults.run`, um für alle `run`-Schritte im Auftrag eine Standardeinstellung für `shell` und `working-directory` bereitzustellen.

Du kannst für `shell` und `working-directory` Standardoptionen für alle [`run`](/de/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)-Schritte in einem Auftrag bereitstellen. Außerdem kannst du für den gesamten Workflow Standardeinstellungen für `run` festlegen. Weitere Informationen finden Sie unter [`defaults.run`](/de/actions/using-workflows/workflow-syntax-for-github-actions#defaultsrun).

Diese können auf den Ebenen `jobs.<job_id>.defaults.run` und `jobs.<job_id>.steps[*].run` überschrieben werden.

Wenn mehr als eine Standardeinstellung mit dem gleichen Namen definiert ist, verwendet GitHub die spezifischste Standardeinstellung. Beispielsweise wird eine in einem Auftrag definierte Standardeinstellung die gleichnamig definierte Standardeinstellung in einem Workflow überschreiben.

### Beispiel: Festlegen von Standardoptionen für den `run`-Schritt für einen Auftrag

```yaml
jobs:
  job1:
    runs-on: ubuntu-latest
    defaults:
      run:
        shell: bash
        working-directory: ./scripts
```