簡體   English   中英

PowerShell:將命令應用於多個文件

[英]PowerShell: apply command to multiple files

我是PowerShell的新手,我很難看到以下命令出了什么問題:

Get-ChildItem -Filter "*Q1 2016.pdf" | For.\pdftk A={$_.name} B={$_.name -replace 'Q1 2016.pdf','Q1 2016-quad.pdf'} cat A1-3 B1 A5-end output {$_.name -replace 'Q1 2016.pdf','Q1 2016-final.pdf'}

我收到以下錯誤:

pdftk.exe : The command parameter was already specified.
At line:1 char:40
+ ... 2016.pdf" | .\pdftk A={$_.name} B={$_.name -replace 'Q1 2016.pdf','Q1 ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : InvalidArgument: (:) [], ParameterBindingException
+ FullyQualifiedErrorId : ParameterSpecifiedAlready

但是,當我運行單個命令調用時,它工作正常:

.\pdftk A='myfile-Q1 2016.pdf' B='myfile-Q1 2016-quad.pdf' cat A1-3 B1 A5-end output 'myfile-final.pdf'

我對自己做錯了什么的想法?

原來它應該是這樣的:

Get-ChildItem -Filter “*Q1 2016.pdf” | ForEach {.\\pdftk A=$($_.name) B=$($_.name -replace 'Q1 2016.pdf','Q1 2016-quad.pdf') cat A1-3 B1 A5-end output $($_.name -replace 'Q1 2016.pdf','Q1 2016-final.pdf')}

不知何故,以下不起作用,但上面做了:

Get-ChildItem -Filter “*Q1 2016.pdf” | ForEach {.\\pdftk A={$_.name} B={$_.name -replace 'Q1 2016.pdf','Q1 2016-quad.pdf'} cat A1-3 B1 A5-end output {$_.name -replace 'Q1 2016.pdf','Q1 2016-final.pdf'}}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM