powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Powershell как вернуть из функции строку
3 сообщений из 3, страница 1 из 1
Powershell как вернуть из функции строку
    #39916431
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть ф-я копирования файлов которая должна вернуть либо "success" либо "failed":

Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
function Get-FileMD5 {
    ...
}

function Copy-files() {
    param (
         [Parameter (Mandatory = $true)]
            [string] $SRC_DIR,
         [Parameter (Mandatory = $true)]
            [string] $DST_DIR
        )
		
    [string] $result = "success"        
    
    $SourceFiles = GCI -Recurse $SRC_DIR | ? { $_.PSIsContainer -eq $false} 
    $SourceFiles | % { 

        $src = $_.FullName 
	    try
	    {		
		   ...		    
		    if ($cpy -eq $true) { 
			    
			    if (!(test-path $dest)) {
				    New-Item -ItemType "File" -Path $dest -Force   
			    }	

			    Copy-Item -Path $src -Destination $dest -errorAction stop  !!!555!!!
		    }				    
	    }
	    catch
	    {
            $result = "failed"            
		    Write-Host "Unable to copy " $src
		    break  
	    }	
    }
    return $result
}



Подключаю файл с этой функцией и вызываю

Код: powershell
1.
2.
3.
4.
# копируем из репазитария в дев
[string] $copy_dev_result = "success"
. "$PSScriptRoot\copy_files.ps1"
$copy_dev_result = Copy-files $repo_dir $dev_dir



И возвращается список копированных файлов.
Если файлов для копирования не было, то все нормально, возвращается "success".
Я так понимаю функция Copy-Item в поток возвращает имя файла, а как вернуть именно строку $result ?
...
Рейтинг: 0 / 0
Powershell как вернуть из функции строку
    #39916460
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и почему то после break в return не попадаю
...
Рейтинг: 0 / 0
Powershell как вернуть из функции строку
    #39916540
Фотография volodin661
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoview,

кому ж охота разбираться ..
засунь в Exception-конструкцию finally

а break тут при чём ? он работает в операторах циклов и в операторе switch
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Powershell как вернуть из функции строку
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]