题
我通过阅读 perldoc perlvar 发现,大约有一千行是对 %ENV 的帮助。有没有办法直接从命令行找到它?
在我的 Windows 机器上,我尝试了以下操作
perldoc ENV
perldoc %ENV
perldoc %%ENV
perldoc -r ENV (returns info about Use Env)
perldoc -r %ENV
perldoc -r %%%ENV
perldoc -r %%%%ENV (says No documentation found for "%ENV")
实际上没有一个返回有关 %ENV 变量的信息。
如果我不想通过数千行进行eye-grep,如何使用 perldoc 来查找 %ENV?
我尝试了建议的“perldoc perlvar”,然后输入 /%ENV,但没有任何反应。
perl -v: This is perl, v5.8.0 built for MSWin32-x86-multi-thread
虽然我已经询问过 %ENV,但这也适用于任何通用术语,因此知道 %ENV 在这个示例的 perlvar 中对我下次不知道哪个部分时不会有帮助。
有没有办法让 perldoc 转储所有内容(呃)并且我可以 grep 输出?
解决方案
perldoc 没有在 perlvar 中搜索特定条目的选项(就像 -f 对 perlfunc 所做的那样)。一般搜索取决于您的寻呼机(在 PAGER 环境变量中指定)。就个人而言,我喜欢“少”。你可以得到 对于 Windows 来说更少 来自 GnuWin32 项目。
其他提示
查看最新开发版本 Pod::Perldoc. 。我提交了一个补丁,可以让你这样做:
$ perldoc -v '%ENV'
%ENV
$ENV{expr}
The hash %ENV contains your current environment. Setting a value in
"ENV" changes the environment for any child processes you subsequently
fork() off.
搜索 %ENV 是名为“less”的寻呼机的一个功能,而不是 perldoc 的功能。因此,如果 perldoc 使用不同的寻呼机,这可能不起作用。
Activestate Perl 附带 HTML 文档,您可以在浏览器中打开 perlvar,按 Ctrl+f 并输入 %ENV,然后按 Enter。
我用 Apache::Perldoc (旧的,但仍然有效)在我的本地计算机上浏览本地文档。如果我有网络访问权限,我只会看 perldoc.perl.org 和搜索。但是,在这种情况下,搜索对于变量没有用,最好使用 特殊变量 链接位于页面左侧。
随着您获得更多 Perl 经验,您就会知道在哪里可以找到文档。要知道,您可能必须参考 perltoc,但过了一会儿您就会知道在中查找函数 perfunc, ,变量在 佩尔瓦尔, , 等等。
您也可以使用我的 Perl 文档 文档.
firefox http://perldoc.perl.org/perlvar.html#%ENV
顺便说一句,自 5.8.0 以来,许多错误已得到修复。
- 安装
unixutils
对于Windows - 称呼:
perldoc perlvar | grep -A10 %env
如果您想查看 %ENV 的内容,可以使用 Data::Dumper 以相当可读的格式打印出来:
perl -MData::Dumper -e '打印 Dumper \%ENV'