Kelly Garcia
asked on
Powershell Paralell Processing
Hi All,
I am trying to copy files using emcopy - similar to robocopy, via powershell parallel processing, I have written the two scripts below and they both fail. one is with background jobs and the other via workflows. Please help!
Thank you in advance.
I am trying to copy files using emcopy - similar to robocopy, via powershell parallel processing, I have written the two scripts below and they both fail. one is with background jobs and the other via workflows. Please help!
workflow copyfiles {
$copy=@(@{source="\\sreadvfile01\c$\testemcopy";destination="\\W10000601\C$\testemcopy_1"}, @{source="\\sreadvfile02\c$\testemcopy";destination="\\W10000601\C$\testemcopy_1"},@{source="\\sreadvfile03\c$\testemcopy";destination="\\W10000601\C$\testemcopy_1"})
ForEach -Parallel ($m in $copy) {
$DateFormat = 'yyyy-MM-dd_HH-mm'
write-host "Copying $($m['source']) to $($m['destination'])"
.\emcopy64.exe $($m['source']) $($m['destination']) /o /s /de /secforce /cm md5 /r:1 /w:1 /c /log:$($m['destination'])_$($DateFormat).txt
}
}
}
$copy=@(@{source="\\sreadvfile01\c$\testemcopy";destination="\\W10000601\C$\testemcopy_1"}, @{source="\\sreadvfile02\c$\testemcopy";destination="\\W10000601\C$\testemcopy_1"},@{source="\\sreadvfile03\c$\testemcopy";destination="\\W10000601\C$\testemcopy_1"})
ForEach ($m in $copy) {
$DateFormat = 'yyyy-MM-dd_HH-mm'
start-job -scriptblock {
write-host "Copying $($m['source']) to $($m['destination'])"
.\emcopy64.exe $($m['source']) $($m['destination']) /o /s /de /secforce /cm md5 /r:1 /w:1 /c /log:$($m['destination'])_$($DateFormat).txt
} -name CopyJob_$m | out-null
}
Thank you in advance.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
https://www.experts-exchange.com/articles/30139/How-to-thread-single-threaded-applications.html