gpt4 book ai didi

perl - 与 Perl 的基本版本打开对话

转载 作者:行者123 更新时间:2023-12-04 08:34:58 27 4
gpt4 key购买 nike

我有一个 Perl 的基本安装,我想创建一个对话框,询问文件和/或文件夹位置以在/上运行脚本。

这是我的工作计算机,我需要获得安装 Perl 的许可 - IT 忽略了我的请求(他们没有拒绝)。我碰巧找到了一个与另一个程序一起安装的精简版 Perl,并且一直在使用它来编写脚本。它正好有 3 个模块,我添加了严格和警告。

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

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

我所有的脚本当前都在它们所在的文件夹上运行。由于脚本随着时间的推移而发生变化,这变得越来越笨拙。我目前的计划是在命令行上使用提示符——让用户从 Windows 资源管理器中复制文件路径,然后使用正则表达式对其进行分析。我预见到这有几个问题:

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

    这似乎是可行的,但我想看看是否会有更友好的方式来做到这一点(尤其是为了解决命令提示符粘贴的烦恼)。

    希望这个问题对于这个论坛来说不是太宽泛——如果不是,我稍后会带着一些尝试的代码回来。

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

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

    当前可用模块:导出商、RE、utf8、严格和警告。通常这工作得很好,因为我通常只是在做文件操作。

    最佳答案

    你不会从一个 13 年的 Perl 版本中得到什么,它甚至可能不包括所有 5.6 模块。这可能是安装此版本 Perl 的 Rational 软件包吗?如果是 ClearCase,有一个名为 clearprompt 的程序.你可以试试。

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

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

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

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

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

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

    关于perl - 与 Perl 的基本版本打开对话,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23372150/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com