首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Windows Emacs shell/shell无法执行ack perl脚本(区域设置错误)

Windows Emacs shell/shell无法执行ack perl脚本(区域设置错误)
EN

Stack Overflow用户
提问于 2013-01-12 01:59:07
回答 1查看 465关注 0票数 2

在常规cmd.exe或cygwin termal上键入此命令会得到预期的结果:

代码语言:javascript
复制
$ ack hello

(我在PATH中有执行ack.pl的ack.bat )

然而,当我在Emacs中的shell或eshell中运行相同的命令时,它给出了这个错误:

代码语言:javascript
复制
c:\Users\Martin>"C:\cygwin\bin\perl" /cygdrive/c/Users/Martin/Desktop/ack.pl hello 
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LC_ALL = (unset),
    LANG = "ENU"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").

我试图通过将SETENV的两个变量都设置为en_US.UTF-8来修复它,但是当我再次运行它时,它没有给我任何结果,只是冻结了。

更新:我终于找到了这个问题的解决方案。我所需要的就是将< NUL添加到命令的末尾,因为它会将Linux style NULL设备解析为默认设备。

现在,如果我键入以下内容:

代码语言:javascript
复制
ack hello < NUL

它会给出我所期望的结果。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14283977

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档