1

在 Cygwin 下的 Strawberry Perl 环境中运行 CPAN shell 时遇到了一个奇怪的提示问题。

使用启动 CPAN 时,perl -MCPAN -eshell我得到以下输出:

cpan shell -- CPAN exploration and modules installation (v1.9600)
Enter 'h' for help.

请不要缺少标准cpan>提示。为什么会这样,我该如何解决?

键入时quit\n我得到提示,但我发出命令后:

quit
cpan> Lockfile removed.
4

2 回答 2

2

这是在 cygwin 终端窗口中运行交互式 Windows 程序的基本问题。我没有方便的 cygwin 安装来尝试它,但尝试任何一个

cygstart perl -MCPAN -eshell

或安装conin并执行

conin perl -MCPAN -eshell
于 2011-04-21T06:26:45.927 回答
0

如果运行 git-bash(不是 cygwin),则使用 winpty 启动 cpan:

winpty perl -MCPAN -eshell

现在应该出现“cpan>”提示。您可能会收到警告:

Unable to get Terminal Size. The Win32 GetConsoleScreenBufferInfo call didn't work. The COLUMNS and LINES environment variables didn't work. at C:\Strawberry\perl\vendor\lib/Term/ReadLine/readline.pm line 410.

这可以通过导出具有适当值的 COLUMNS 和 LINES 变量来解决。(说):

export COLUMNS=80
export LINES=100

有些脚本将使用 bash、node 或 python 拉取当前窗口设置。

重击:

export LINES=$(tput lines)
export COLUMNS=$(tput cols)
于 2021-05-18T17:49:55.793 回答