如何退出当前 CPAN 模块并打开一个新会话?

Posted

技术标签:

【中文标题】如何退出当前 CPAN 模块并打开一个新会话?【英文标题】:How to exit current CPAN module and open a new session? 【发布时间】:2020-12-25 19:35:20 【问题描述】:

我是 perl 和 CPAN 的新手。我看到我的系统中安装了 perl。

但是,我想安装 DBI 包来运行名为 INSTALL.PL 的脚本。

当我输入 CPAN 时,我收到以下错误消息

Loading internal null logger. Install Log::Log4perl for logging messages
Terminal does not support AddHistory.

There seems to be running another CPAN process (pid 3986).  Contacting...
Other job not responding. Shall I overwrite the lockfile '/home/abcd/.cpan/.lock'? (Y/n) [y]

如果我给出no,我不会得到CPAN 命令提示符。而如果我给yes,我会得到以下命令提示符

nolockcpan[1]

我可以知道错误消息是什么意思吗?为了避免再次出现此消息,应采取哪些步骤?

我不能进入cpan 模式并按CTRL+Z 退出并再次进入cpan 模式吗?

如何避免此错误消息以及何时会发生?

【问题讨论】:

Re "请问错误信息是什么意思",表示上次使用时没有干净退出。 Re "我不能进入 cpan 模式并按 CTRL+Z 退出并再次进入 cpan 模式吗?",是的,正常输入 fg @ikegami - 我可以知道如何退出 cpan 模式吗?当我在 cpan 提示符中键入 fg 时,我收到以下消息 Unknown shell command 'fg'. Type ? for help. exitquit,不记得是哪个了。 Ctrl-D 当然也可以。 /// fgshell 命令,用于在使用 Ctrl-Z 暂停后返回 into cpan 好的,谢谢。你可以写一个答案,我可以接受。 【参考方案1】:

这意味着cpan 上次运行时没有正确退出。例如,如果您在终端仍在运行时关闭终端,就会发生这种情况。

您可以使用exitquit 退出cpan。它也会在其 STDIN 达到 EOF 时退出(这可以在 unix 上使用 Ctrl-D 完成)。

您谈到 Ctrl-Z,它会停止(暂停)它,但不会退出它。停止后使用fg返回cpan。也就是说,在停止或仍在运行时启动 cpan 会导致不同的消息 (Other job is running. Shall I try to run in downgraded mode?)。

【讨论】:

以上是关于如何退出当前 CPAN 模块并打开一个新会话?的主要内容,如果未能解决你的问题,请参考以下文章

套接字 IO - 新会话触发断开连接

在 iOS 中结束 Flurry Analytics 会话

centos环境下使用CPAN安装perl模块

linux获取后台进程的控制台数据

Spotify android 应用程序如何保存当前的音乐播放时间?就像您退出应用程序并在前几天打开它一样?

如何在 Chocolatey 安装后刷新 PowerShell 会话的环境而无需打开新会话