gpt4 book ai didi

bash - linux中依赖于语言的 'yes'命令,可能吗?

转载 作者:行者123 更新时间:2023-12-04 13:51:26 25 4
gpt4 key购买 nike

因此,显然“yes”命令默认返回“y”。它在 Ubuntu 中与英语作为系统语言完美配合。现在我实际上有一个用户尝试在 Ubuntu 下使用德语系统语言运行该软件,但它没有按预期工作。提示似乎期望“j”或“ja”,但“yes”仍然提供“y”。
有没有办法让'是'语言的输出依赖?
现在我们开始使用
LC_ALL=C 在脚本的顶部。但仍在评估这是否是一个好的解决方案。

最佳答案

好的,挖出这个页面:https://github.com/coreutils/coreutils/blob/master/src/yes.c
在第 63 行:

setlocale (LC_ALL, "");
""表示关注 setlocale :

If locale is an empty string, "", each part of the locale that should be modified is set according to the environment variables. The details are implementation-dependent. For glibc, first (regardless of category), the environment variable LC_ALL is inspected, next the environment variable with the same name as the category (see the table above), and finally the environment variable LANG. The first existing environment variable is used. If its value is not a valid locale specification, the locale is unchanged, and setlocale() returns NULL.


所以它应该得到你的系统语言,但它没有。 (也许这可能是一个错误)
你最好的选择是别名。

关于bash - linux中依赖于语言的 'yes'命令,可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69075916/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com