加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

为什么Perl中的反引号运算符在Windows上没有引号时无效?

发布时间:2020-12-16 06:18:04 所属栏目:大数据 来源:网络整理
导读:我对Perl很新,所以请原谅我这个问题是微不足道的. 在工作中,我有一个创建脚本的任务,当其他开发人员错过任务的截止日期时,该脚本将发送电子邮件.整个事情必须在Windows上工作,使用Strawberry Perl,我使用windows命令date / T来执行日期检查.我使用反引号运算
我对Perl很新,所以请原谅我这个问题是微不足道的.

在工作中,我有一个创建脚本的任务,当其他开发人员错过任务的截止日期时,该脚本将发送电子邮件.整个事情必须在Windows上工作,使用Strawberry Perl,我使用windows命令date / T来执行日期检查.我使用反引号运算符调用了很多外部命令,但在这种特殊情况下,反引号不起作用:

my $date = `date /T`;

输出:

date: invalid date `/T'

固定使用一些额外的报价:

my $date = `"date /T"`

输出:

Mon 07/07/2014

我的问题是:为什么?

如果使用反引号的其他外部调用将起作用,我会得到它,但这是我必须以这种方式调用的唯一一个,以使其工作.

解决方法

您似乎无意中使用了Cygwin / GnuTools版本的日期.

在Windows命令提示符下,date / T给出当前时间.
这不是可执行文件,这是一个命令.

但是,在Cygwin / GnuTools环境下运行date / T会给出日期:无效日期’/ T’.这是因为环境1)无法看到Windows date命令,2)在PATH环境变量中找到可执行日期并改为运行它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读