posix-shell-pro
Schreibe portable POSIX-Shell-Skripte für jedes Unix-System
Shell-Skripte funktionieren oft aufgrund von bash-spezifischen Features nicht auf verschiedenen Systemen. Dieser Skill stellt sicher, dass Ihre Skripte überall durch strikte POSIX-Konformität ausgeführt werden können.
Die Skill-ZIP herunterladen
In Claude hochladen
Gehe zu Einstellungen → Fähigkeiten → Skills → Skill hochladen
Einschalten und loslegen
Teste es
Verwendung von "posix-shell-pro". Erstellen Sie ein POSIX-Skript, das ein Verzeichnis mit Validierung sichert
Erwartetes Ergebnis:
- #!/bin/sh
- set -eu
- Usage: backup.sh <source_dir> <dest_dir>
- if [ $# -lt 2 ]; then
- echo "Error: source and destination required" >&2
- exit 1
- fi
- src="$1"
- dest="$2"
- [ -d "$src" ] || { echo "Source not a directory" >&2; exit 1; }
- mkdir -p "$dest" || exit 1
- tar -cf - -C "$src" . | (cd "$dest" && tar -xf -)
- echo "Backup completed successfully"
Verwendung von "posix-shell-pro". Überprüfen Sie portabel, ob ein Befehl existiert
Erwartetes Ergebnis:
Use: command -v cmd >/dev/null 2>&1 && echo "found" || echo "missing"
Sicherheitsaudit
SicherThis is a prompt-only skill with no executable code. Static analysis scanned 0 files and detected 0 security issues with a risk score of 0/100. The skill provides instructional content on POSIX shell scripting best practices and actually promotes security patterns including input validation, safe variable quoting, cleanup traps, and warnings against eval on untrusted input. No network calls, command execution, or sensitive operations detected.
Risikofaktoren
⚙️ Externe Befehle
Qualitätsbewertung
Was du bauen kannst
Plattformübergreifende Deployment-Skripte
Erstellen Sie Installations- und Deployment-Skripte, die identisch auf Linux, BSD, macOS und eingebetteten Systemen funktionieren, ohne dass eine bash-Installation erforderlich ist.
Container- und eingebettete System-Tools
Erstellen Sie leichtgewichtige Skripte für Alpine Linux, BusyBox und ressourcenbeschränkte Umgebungen, in denen bash nicht verfügbar ist.
Legacy-Systemadministration
Verwalten und modernisieren Sie Skripte für ältere Unix-Systeme wie Solaris, AIX und Legacy-Linux, die möglicherweise kein bash haben oder ältere Versionen verwenden.
Probiere diese Prompts
Erstellen Sie ein POSIX-konformes Shell-Skript, das Eingabeargumente validiert und eine einfache Dateioperation ausführt. Fügen Sie eine ordnungsgemäße Fehlerbehandlung mit set -eu, Eingabevalidierung und Cleanup-Traps ein.
Konvertieren Sie dieses bash-Skript in striktes POSIX sh. Ersetzen Sie alle Arrays, [[-Konditionale und bash-spezifischen Features durch POSIX-konforme Entsprechungen. Erklären Sie jede vorgenommene Änderung.
Implementieren Sie eine POSIX-konforme Argumentanalyse für ein Skript, das -h für Hilfe, -v für verbose, -o für Ausgabedatei und positionale Argumente akzeptiert. Verwenden Sie while und case ohne getopts für lange Optionen.
Erstellen Sie eine POSIX-Shell-Funktionsbibliothek, die Plattformunterschiede zwischen Linux, BSD, macOS und BusyBox behandelt. Fügen Sie OS-Erkennung, Verfügbarkeitsprüfungen für Befehle und portable Implementierungen häufiger Hilfsprogramme ein.
Bewährte Verfahren
- Klammern Sie Variablenerweiterungen immer als "$var" ein, um Wortaufteilung und Globbing zu verhindern
- Verwenden Sie printf anstelle von echo für alle Ausgaben, da sich das echo-Verhalten über verschiedene Shells unterscheidet
- Implementieren Sie Cleanup mit trap-Befehlen, um temporäre Dateien bei EXIT-, INT- und TERM-Signalen zu entfernen
Vermeiden
- Verwendung von [[-Konditionalen oder bash-Arrays, die auf dash, ash und anderen POSIX-Shells fehlschlagen
- Verwendung von echo -e oder echo -n, die über verschiedene Systeme inkonsistentes Verhalten aufweisen
- Verwendung von Prozesssubstitution <() oder des source-Befehls anstelle von Pipes und dem Punkt-Operator