Name: SmartControl
Beschreibung:
Es ermöglicht die einfache Steuerung von der screen-Anwendung unter Linux, um Anwendungen automatisch zu starten oder stoppen. Jeder screen-Instanz können bei Start/Stop Inputs gesendet werden.
Konfigurationen für Instanzen werden in einer Config-Datei hinterlassen und dann mit Namen angesteuert. Das Programm erkennt, ob eine Konfiguration bereits läuft und verhindert bei Bedarf den Mehrfachstart einer Konfiguration. Durch SmartControl müssen Daten von Konfigurationen wie Programmname, Argumente, Arbeitsverzeichnis, uvm. nur noch an einer zentralen Stelle eingerichtet werden und sind dann einfach und unkompliziert direkt start- und stoppbar.
Beispiel-Konfiguration
Verwendung:
oder
Beispiel:
Motivation:
Als Sysadmin verschiedener Linux-Server bin ich begeisterter Fan von screen. Bisher fehlte mir aber die Möglichkeit, schnell und einfach Screens zu konfigurieren und zu starten:
Screenshot(s):
Keine, da Konsolenanwendung.
Verwendete Programmiersprache(n) und IDE(s):
Systemanforderungen:
Systemveränderungen:
Keine, es werden lediglich Config-Dateien (JSON-Format) und Logs im Arbeitsverzeichnis erstellt.
Download(s):
Quellcode: Github (Achtung: Code noch undokumentiert)
Kompiliert: Anhang (v1.0.0.0)
Lizenz/Weitergabe:
Das Programm ist Open Source, Verbesserungsvorschläge und Pull-Requests sind gerne gesehen!
Beschreibung:
Es ermöglicht die einfache Steuerung von der screen-Anwendung unter Linux, um Anwendungen automatisch zu starten oder stoppen. Jeder screen-Instanz können bei Start/Stop Inputs gesendet werden.
Konfigurationen für Instanzen werden in einer Config-Datei hinterlassen und dann mit Namen angesteuert. Das Programm erkennt, ob eine Konfiguration bereits läuft und verhindert bei Bedarf den Mehrfachstart einer Konfiguration. Durch SmartControl müssen Daten von Konfigurationen wie Programmname, Argumente, Arbeitsverzeichnis, uvm. nur noch an einer zentralen Stelle eingerichtet werden und sind dann einfach und unkompliziert direkt start- und stoppbar.
Diese Konfiguration erstellt bei
Start
den Editor nano in einer screen-Instanz, gibt dort den Text "This is a demo!"[Enter] ein; bei Stop
schließt es den Editor ([STRG+X]), wobei bestätigt wird, dass der Inhalt gespeichert ("j") und der vorgegebene Dateiname genutzt werden soll ([ENTER]):
Verwendung:
[mono] SmartControl.exe [Start|Stop|Restart] [Name]
oder
[mono] SmartControl.exe [-l|--list|-h|--help|-v|--version]
-l
/-list
gibt alle geladenen Konfigurationen aus
-h
/--help
zeigt den Hilfetext an-v
/--version
zeigt die aktuelle Version des Programms an
Beispiel:
mono SmartControl.exe Start NanoDemo
Motivation:
Als Sysadmin verschiedener Linux-Server bin ich begeisterter Fan von screen. Bisher fehlte mir aber die Möglichkeit, schnell und einfach Screens zu konfigurieren und zu starten:
- Shell? - Bei häufiger Nutzung keine ernst-zunehmende Alternative.
- Crontab? - Blöd nur, wenn ich screens manuell starten/stoppen möchte.
- Bash-Scripts? - Dann lieber gar nicht...
Screenshot(s):
Keine, da Konsolenanwendung.
Verwendete Programmiersprache(n) und IDE(s):
- IDE: Visual Studio 2017 RC
- Sprache: C#
- Framework: .NET Framework 4.0 bzw. mono-runtime 4.0
- Libraries: NewtonsoftJson (NuGet), log4net (NuGet)
Systemanforderungen:
- screen-Anwendung
- mono-runtime 4.0
Systemveränderungen:
Keine, es werden lediglich Config-Dateien (JSON-Format) und Logs im Arbeitsverzeichnis erstellt.
Download(s):
Quellcode: Github (Achtung: Code noch undokumentiert)
Kompiliert: Anhang (v1.0.0.0)
Lizenz/Weitergabe:
Das Programm ist Open Source, Verbesserungsvorschläge und Pull-Requests sind gerne gesehen!
-l
-list