Ausführen von Befehlen mit Snakemake


  • “Bevor Sie Snakemake starten, müssen Sie ein Snakefile schreiben”
  • “Ein Snakefile ist eine Textdatei, die eine Liste von Regeln definiert”
  • “Regeln haben Eingänge, Ausgänge und Shell-Befehle, die ausgeführt werden sollen”
  • “Du sagst Snakemake, welche Datei es erstellen soll, und es wird den in der entsprechenden Regel definierten Shell-Befehl ausführen”

Ausführen von Snakemake auf dem Cluster


  • “Snakemake generiert und übermittelt seine eigenen Batch-Skripte für Ihren Scheduler.”
  • “Sie können Standardkonfigurationseinstellungen in einem Snakemake-Profil speichern”
  • localrules definiert Regeln, die lokal ausgeführt werden und nie an einen Cluster übermittelt werden.”

Platzhalter


  • “Snakemake-Regeln werden mit Platzhaltern generischer gestaltet”
  • “Platzhalter im Shell-Teil der Regel werden durch Werte ersetzt, die auf den gewählten Platzhaltern basieren”

MPI-Anwendungen und Snakemake


  • “Snakemake wählt die passende Regel durch Ersetzen von Platzhaltern, so dass die Ausgabe mit dem Ziel übereinstimmt”
  • “Snakemake prüft auf verschiedene Fehlerbedingungen und hält an, wenn es ein Problem sieht”

Verkettung von Regeln


  • “Snakemake verknüpft Regeln, indem es iterativ nach Regeln sucht, die fehlende Eingaben machen”
  • “Regeln können mehrere benannte Eingänge und/oder Ausgänge haben”
  • “Wenn ein Shell-Befehl nicht die erwartete Ausgabe liefert, wird Snakemake dies als Fehler betrachten

Verarbeitung von Listen von Eingaben


  • “Verwenden Sie die Funktion expand(), um Listen von Dateinamen zu erzeugen, die Sie kombinieren wollen”
  • “Jede {input} zu einer Regel kann eine Liste variabler Länge sein”