使用Perl的裸骨版本打开对话

Lad*_*nus 8 perl user-interface

我有一个Perl的骨架安装,我想创建一个对话框,要求提供文件和/或文件夹位置来运行脚本.

这是我的工作计算机,我需要安装Perl的权限 - IT忽略了我的请求(他们没有否认它).我碰巧找到了一个安装了另一个程序的Perl的精简版本,并一直使用它来编写脚本.它有3个模块,我添加了严格和警告.

我知道有一些模块可以做到这一点(TK是最受欢迎的),但它们依赖于其他模块(AutoLoader,DynaLoader,...),它们可能依赖于其他模块.潜入两个模块是一件事......偷偷打了十几个+是另一个.

编辑(从下面):另一个复杂因素.我的直接团队成员使用我的脚本,他们都有Perl的简单安装,因为他们都有父程序.有人第一次使用我的一个Perl脚本时,我设置文件关联并添加严格和警告(所以我不必记得将它们注释掉).因此 - 我想尽可能简化设置.


我的所有脚本当前都在它们所在的文件夹上运行.由于脚本随时间的变化而变得笨拙.我目前的计划是在命令行上使用提示 - 让用户从Windows资源管理器复制文件路径,然后使用regex进行分析.我预见到有几个问题:

  • 粘贴到命令提示符很烦人
  • 穿越网络驱动器需要小心(C> G> N)
  • 空格/奇怪的字符/斜杠正确的方式
  • 确保脚本在"新"输入位置运行

这似乎可行,但我想看看是否会有更友好的方式来做到这一点(特别是绕过命令提示粘贴烦恼).

希望这个论坛的问题不是太广泛 - 如果不是,我会稍后再回来尝试一些代码.


操作系统: Windows 7专业版(64位)

Perl: ActiveState版本5.6.0(2001年2月21日下载)

目前可用的模块:出口商,RE,utf8,严格和警告.通常这很好用,因为我通常只是在进行文件操作.

Dav*_* W. 3

您不会从 13 年前的 Perl 版本中得到太多好处,它甚至可能不包含所有 5.6 模块。这可能是安装了这个版本的 Perl 的 Rational 软件包吗?如果是 ClearCase,则有一个名为 的程序clearprompt。你可以尝试一下。

我知道这不是您想要的,但是忘记 Perl,并在PowerShell中尝试它。

PowerShell 是 Microsoft 专门为 Windows 创建的一种未得到充分利用的编程语言。它是一种与 Windows 紧密集成的成熟编程语言。它是高度面向对象的。它可以显示对话框,而且最重要的是,它出现在自 Windows XP 以来的所有 Windows 计算机上。这意味着,如果您编写 PowerShell 应用程序,您的所有同事都可以使用它。

我的整个 Powershell 体验由三个程序组成。我通常在 Unix/Linux 环境中工作,主要是在服务器端。但是,我们有一个客户需要一个特殊的脚本来监视某些流程,并在这些流程未在特定时间范围内更新时向支持人员发送电子邮件。

用 Perl 来做这件事是轻而易举的事,但他们没有 Perl 或 Python,而且我被告知这些系统上不能安装任何东西。我必须使用已有的任何工具,所以我唯一的选择是 PowerShell。

最后,Powershell 运行得很好,而且上手并不难。我的主要问题是,我能找到的只是 PowerShell 2 文档,但运行脚本的服务器正在使用 PowerShell 1。更糟糕的是,我的系统有 PowerShell 2,所以我会在我的系统上运行一个脚本,然后找到它不适用于客户的系统。不过,我确实掌握了 PowerShell 的窍门,并且仍然按时将程序交付给客户。

如果您了解 VB,那么 PowerShell 语法应该相当熟悉,但即使您不熟悉 VB,如果您做过任何面向对象的编程,那么掌握该语法也不会有任何问题。因此,尽管我很喜欢用 Perl 编程,但你所处的环境却非常有限。不妨使用环境为您提供的工具。