![](/img/trans.png)
[英]How to read a string from multiple notepad++ files and pass those values into a command using for loop (using 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.