Script do Powershell como fornecer valores de fornecimento silencioso para o seguinte parâmetro?

0

Eu tenho este script copiando o primeiro arquivo de backup do diretório para outro. Isso funciona bem, mas precisa de intervenção do usuário e não é executado automaticamente. Como eu posso silenciar essa mensagem?

Aquiestáocódigo:

$bak_path="C:\Users\admin\Pictures\test"
$backup_dest = "C:\Users\admin\Pictures\paste"
get-childitem -path $bak_path -Filter "*" | 
    where-object { -not $_.PSIsContainer }  | 
    sort-object -Property $_.CreationTime | 
    select-object -last 1 | 
    copy-item -Destination (join-path $backup_dest )
    
por Tack 12.10.2018 / 10:51

2 respostas

1

Seu problema é join-path . Você precisa fornecer um caminho e um caminho filho. Então, ao fazer isso, você se livraria do prompt. Não está claro por que esse join-path está lá em primeiro lugar. É provável que você possa simplesmente deixar de fora.

    
por 12.10.2018 / 10:59
2

Esta mensagem é proveniente de join-path , pois join-path precisa de um -Path e um -ChildPath para funcionar.

para que o seu comando fique assim: join-path -path $backup_dest -childpath xy

mas, na minha opinião, você não precisa de join-path .

por que não apenas copy-item -Destination $backup_dest ?

em quais caminhos você deseja participar?

    
por 12.10.2018 / 10:58