Вот мой сценарий powershell, который я могу использовать для входа в Cisco Ironport и загрузки всех файлов в папке / mail_logs / на мой локальный компьютер. Моя проблема заключается в том, что если я не укажу файл назначения, то скрипт выдаст ошибку «pscp: не может создать файл». Поэтому, если я укажу файл назначения ($ File_MailLogs), то все загруженные файлы будут иметь одинаковые имена, короче, все предыдущие файлы будут перезаписаны. Итак, как мне загрузить все файлы без перезаписи.
$SOFTWARE_PATH = "E:\Software\putty_32bit"
$SCRIPTS_PATH = "E:\Scripts_Do_Not_Delete"
$PRIVKEY = $SCRIPTS_PATH + "\IronportClusEval.ppk"
$Folder_MailLogs = "c:\temp\IronPort_MailLogs\"
$File_MailLogs = $Folder_MailLogs + "test.txt"
if ( -not (Test-Path $Folder_MailLogs -PathType Container) ) { mkdir $Folder_MailLogs }
$RemoveFiles_String = $Folder_MailLogs + "\*.txt"
Remove-Item $RemoveFiles_String
$IronPortServer = ("aaa-bbb-101.com")
$source_file = "admin@" + $IronPortServer + ":/mail_logs/*"
echo y | &($SOFTWARE_PATH + "/pscp.exe") -i $PRIVKEY $source_file $File_MailLogs
См. Скриншот работающего скрипта, показывающий, что все файлы действительно загружаются