我正在运行一个外部提供的perl脚本(如果您有兴趣,请使用OpenSSL配置脚本)。它包含以下行:
this.zoom = d3.zoom()
.scaleExtent([0.01, 9000])
.translateExtent([[-100, -100], [100, 100]])
.extent([[0,0], [500, 500]])
.on("zoom", this.zoomed.bind(this))
zoomed() {
this.yScale = d3.scaleLinear()
.domain([0, 1000])
.range([0, 100]);
this.xScale = d3.scaleLinear()
.domain([-20, 2000])
.range([0, 100]);
this.yScale.domain(zoomTransform.rescaleY(this.yScale).domain());
this.xScale.domain(zoomTransform.rescaleX(this.xScale).domain());
}
我正在Windows上运行,但是我使用的是git版本2.19.0.windows.1附带的perl版本,这似乎是Cygwin perl所使用的,它使用sh执行反引号。问题在于,这将创建一个名为“ NUL”的文件,而不是丢弃stderr。除其他外,您无法从资源管理器或命令行中删除此类文件。 (您可以通过bash)。
我已阅读this question,但将PERL5SHELL设置为my $vew=`nasmw -v 2>NUL`;
并不会停止创建文件。
是否可以控制Cygwin perl使用的外壳?
Perl -v报告版本5.26.2
(显而易见的解决方法是将C:\Windows\System32\cmd.exe /C
修补到NUL
,但如果可以避免的话,我宁愿不这样做。)