bash - 获取给定代码的语言名称,反之亦然
问题描述
给定双字母代码(参见ISO 639-1和ISO 639-1 代码列表),如何获取语言的英文名称?
en --> english
it --> italian
而反过来呢?
spanish --> es
finnish --> fi
当然,一种可能的方法是从 Internet 下载包含这些信息的文件(例如可以在此处找到的文件),然后逐行读取,提取您需要的信息。但是,我想知道是否可以仅依赖操作系统(在我的例子中是 Ubuntu):它包含有关语言环境的信息,所以我想有一种方法可以做到这一点。
解决方案
如果你安装了 Perl,你可以使用核心模块 'Locale::Langauge' 将 2 个字母语言转换为名称,反之亦然
perl -e 'use Locale::Language; print code2language("ar");'
Arabic
perl -MLocale::Language -e 'print language2code("French");'
fr
推荐阅读
- node.js - [ERR_HTTP_HEADERS_SENT]:在 Express 中将标头发送到客户端后无法设置标头
- azure - Azure 权限:无权执行此操作
- python - numpy 遗传算法选择:轮盘赌 vs. 随机通用采样
- javascript - 属性在对象中,但显示为未定义
- postgresql - 如何在聚合中包含下一组的第一行?
- phpstorm - 如何阻止 PhpStorm 从变量名中去除单引号
- c - 由于“没有这样的文件或目录”,无法创建共享库
- powershell - Powershell import-csv $variable 正确为空
- encryption - 如何构建高度安全的端到端加密 React Native 消息传递应用程序
- django - 从 UserCreationForm 中删除用户名并根据电子邮件、名字和姓氏为用户自动生成用户名