2017-10-19 100 views
1

我有一個在Ubuntu中運行的腳本,但是我想在Windows中運行它。我知道如何執行它,我只是不知道我的腳本有什麼問題不讓它運行。在Windows上運行perl腳本

#!/usr/bin/perl 

use strict; 
use warnings; 
use IO::Compress::Zip qw(zip $ZipError); 
use File::Find; 

my @files = <C:\Windows\*.log>; 

zip [ @files ] => 'Desktop/output.zip' 
    or die "zip failed: $ZipError\n"; 

unlink glob "'C:\Windows\*.log'"; 
print "The job is done\n"; 
+0

我會說'glob'後的字符串。爲什麼不重複使用與'@ files'相同的語法?可能還有''部分中的反斜槓。我無法在Windows上測試。 – simbabque

+1

Perl拋出什麼錯誤? – PhillipD

+1

難道你不會收到警告嗎? '無法識別的逃脫\ W通過...' – toolic

回答

3

試試這個:

my @files = glob 'C:/Windows/*.log'; 

unlink glob 'C:/Windows/*.log'; 

調用glob明確優於<>,並使用/,而不是\簡化引用。

相關問題