如何翻譯bash腳本“echo messages”自動方法

如何翻譯bash腳本“echo messages”自動方法

我有一個 bash 腳本,需要將其翻譯成其他語言。僅回顯訊息

有沒有一些自動方法,翻譯整個腳本,或者可以幫助我將所有訊息“echo”翻譯成其他語言的工具? (避免在Google翻譯器中輸入所有“echo”)

答案1

您無法更改某些語言設置,並且腳本的 echo 命令將神奇地變成另一種語言。

您可以執行下列操作之一:

  • 取得語言文件。
  • 建立一個 bash 腳本來轉換原始 bash 腳本。
  • 在 bash 腳本中建立一個轉換輸出的函數。

由於您不熱衷於 dict 解決方案,因為它太谷歌翻譯了...我敢打賭,採購對您來說是一個很好的解決方案。

一個簡單的例子是;

/lang/en.sh

FILEMISSING="That file is missing..."

/lang/fr.sh

FILEMISSING="Ce fichier est manquant..."

實際腳本.sh

#!/bin/bash

LANGUAGE=${LANG:0:2}
source /lang/$LANGUAGE.sh

if [ ! -f "bob.txt" ]; then
  echo "$FILEMISSING"
fi

答案2

您可以使用$"…"語法來指定要根據語言環境進行翻譯的字串

翻譯必須在訊息目錄文件;請參閱 bash 手冊以了解該文件的位置,並參閱 Glibc 手冊以了解該文件的格式。

當然,您(或其他人)必須提供每個字串的翻譯。無法自動翻譯文本,尤其是斷章取義的短字串。自動翻譯是科幻小說。

相關內容