
Ich habe ein Bash-Skript, das ich in andere Sprachen übersetzen muss. Nur Echo-Nachrichten
Gibt es einigeautomatische Methode, Übersetzung des gesamten Skripts, oder ein Tool, das mir helfen kann, alle „Echo“-Nachrichten in andere Sprachen zu übersetzen? (Damit ich nicht alle „Echos“ in den Google-Übersetzer eingeben muss)
Antwort1
Sie können einige Spracheinstellungen nicht ändern und die Echo-Befehle Ihres Skripts werden wie durch Zauberhand in einer anderen Sprache wiedergegeben.
Sie können einen der folgenden Schritte ausführen:
- Quelle einer Sprachdatei.
- Erstellen Sie ein Bash-Skript, das das ursprüngliche Bash-Skript konvertiert.
- Erstellen Sie im Bash-Skript eine Funktion, die die Ausgabe übersetzt.
Da Sie von der Wörterbuchlösung nicht begeistert sind, weil sie zu sehr nach Google Translate klingt, bin ich sicher, dass Sourcing eine gute Lösung für Sie wäre.
ein einfaches Beispiel wäre;
/lang/en.sh
FILEMISSING="That file is missing..."
/lang/fr.sh
FILEMISSING="Ce fichier est manquant..."
tatsächlichesSkript.sh
#!/bin/bash
LANGUAGE=${LANG:0:2}
source /lang/$LANGUAGE.sh
if [ ! -f "bob.txt" ]; then
echo "$FILEMISSING"
fi
Antwort2
Mit der Syntax können Sie $"…"
einenZeichenfolge, die entsprechend dem Gebietsschema übersetzt werden soll.
Die Übersetzungen müssen in einerNachrichtenkatalogdatei; Informationen zum Speicherort dieser Datei finden Sie im Bash-Handbuch und zum Format der Datei im Glibc-Handbuch.
Natürlich müssen Sie (oder jemand anderes) die Übersetzung für jede Zeichenfolge bereitstellen. Es gibt keine Möglichkeit, Text automatisch zu übersetzen, insbesondere kurze Zeichenfolgen ohne Kontext. Automatische Übersetzung ist Science-Fiction.