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 / user-298179

seagull's questions

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
seagull
Asked: 2023-02-28 18:53:57 +0800 CST

PowerShell: em um arquivo de texto, torne esta linha parte da linha anterior

  • 5

As circunstâncias que levaram a essa solicitação não são muito importantes (leia-se: por favor, não me dê dicas sobre como evitar essa situação, já tentei), mas tenho um mecanismo que produz arquivos de texto. Por exemplo, esses arquivos normalmente se parecem com isso:

ENTRY: XYZ
COMMENT: This is a comment
ENTRY: 123
INTEGER: 4

Às vezes, no entanto, os dados que processamos contêm quebras de linha, então os arquivos de texto ficam assim:

ENTRY: XYZ
COMMENT: This is a comment
that spans over multiple lines
just to make life difficult
ENTRY: 123

O que estou procurando é algum PowerShell que possa processar um arquivo de texto inteiro e dizer: "para linhas que não contêm um :caractere, faça esta linha parte da linha antes dela, possivelmente substituindo a quebra por ::ou algo para deixar claro". O resultado final procurado seria:

ENTRY: XYZ
COMMENT: This is a comment :: that spans over multiple lines :: just to make life difficult
ENTRY: 123

Até agora tenho usado get-content | % {$_ etc}, mas % divide as coisas em linhas individuais. Eu não acredito %ou ?tenho qualquer noção de contexto, então não será possível dizer where object match xyz make it part of the last object.

Passei muito tempo tentando usar números de linha. Meu pseudocódigo era while the document contains lines that do not contain a colon, get the line number of the first line not containing a colon and set the previous line number to contain both its data and the data of the offending line; no entanto, a ação anterior alteraria o número de linhas, o que significa que toda vez que eu fizesse esse ajuste, precisaria recalcular os números das linhas individuais. Acrescente a isso que "enquanto o documento contém linhas que não começam com dois pontos" pode ser um processo muito intensivo do sistema (esses documentos podem ser muito grandes) e é uma receita para o desastre.

powershell
  • 1 respostas
  • 25 Views
Martin Hope
seagull
Asked: 2022-04-30 02:16:27 +0800 CST

Listar todas as contas de usuário com presença ativa no dispositivo local

  • 5

Eu preciso de uma maneira no PowerShell (idealmente PS2.0+) para listar todas as contas de usuário em um sistema local onde um usuário tem uma presença local, mas onde os usuários podem não ser usuários locais per se. Isso quer dizer que o dispositivo pode estar conectado a um domínio, onde um comando como get-WMIObject Win32_UserAccountlistará todos os usuários no domínio e (provavelmente) atingirá o tempo limite ou será executado em um erro de permissão porque o comando está sendo executado a partir do contexto do usuário local (mesmo que esteja sendo executado como a conta LocalSystem).

Aqui estão as várias maneiras que conheço para enumerar usuários e por que eles são inadequados.

  • get-WMIObject Win32_UserAccount -Filter {LocalAccount="True"}
    Isso não mostra os usuários do domínio que realmente fizeram login no dispositivo; ele mostra apenas os usuários que foram configurados localmente no dispositivo em questão, deixando contas de usuários em potencial na mesa.
  • net user
    Como acima.
  • get-WMIObject Win32_UserAccount(sem argumentos adicionais)
    Em dispositivos conectados a um domínio adequadamente grande, essa consulta trava e, eventualmente, é encerrada com um erro de "tarefa cancelada", pois está tentando enumerar vários milhares de usuários. Eu só preciso dos usuários com presença no dispositivo local.
  • Enumerate HKEY_USERS
    Este hive apenas enumera como chaves os perfis dos usuários que estão logados no momento da consulta .
  • Enumerar C:\Users
    Isso funciona, mas estou relutante em usá-lo; parece tão impreciso. Além disso, também adiciona contas inúteis como Defaulte Publicnas quais não estou interessado.

Tentarei antecipar reclamações como a resposta a esta pergunta semelhante ("então você precisa reprojetar seu aplicativo"), observando que não estou tentando coletar dados desses perfis de usuário. Tudo o que preciso é enumerá-los; um valor accountName é bastante suficiente.
Existe um livro-razão ou lista em algum lugar no Windows que eu possa consultar esses dados além de examinar as pastas?

windows powershell
  • 1 respostas
  • 454 Views
Martin Hope
seagull
Asked: 2022-03-05 03:57:09 +0800 CST

O Terminal do macOS só está em inglês?

  • 12

No Windows, a análise de cadeia de caracteres na linha de comando é um jogo de dados, tanto para o Lote quanto para o PowerShell. Ferramentas de linha de comando essenciais como fsutile dcdiagretornam sua saída em strings que são internacionalizadas para o idioma da instalação do SO, tornando quase impossível escrever scripts em uma capacidade de tamanho único sem levar em consideração o suporte para a escolha de cada idioma e formatação .

Sempre que possível, escrevo no PowerShell (para retornar objetos em vez de strings ) e uso o WMI para retornar enumeradores não localizados, traduzo-me por meio de tabelas de pesquisa; sempre haverá algumas ferramentas, no entanto, que servem como o único meio em um dispositivo para coletar as informações necessárias.

Agora estou escrevendo um script para macOS invocando (neste caso) a csrutilferramenta.
Como muitos utilitários *nix, sua saída está no formato de string. Executá-lo produz a seguinte saída:

System Integrity Protection status: unknown (Custom Configuration).

Configuration:
    Apple Internal: disabled
    Kext Signing: disabled
    Filesystem Protections: disabled
    Debugging Restrictions: disabled
    DTrace Restrictions: disabled
    NVRAM Protections: disabled
    BaseSystem Verification: enabled

This is an unsupported configuration, likely to break in the future and leave your machine in an unknown state.

De alguma forma a internet não contém nenhum conhecimento sobre esse assunto que eu pudesse encontrar, então:

Quão agressiva é a Apple na internacionalização da saída do terminal?

Esta é menos uma pergunta sobre Bash ou ZSH, pois sei que são sempre em inglês, mas o macOS é notório por criar forks incompatíveis de ferramentas POSIX específicas da Apple; além disso, conforme demonstrado acima, existem muitas ferramentas de linha de comando desenvolvidas pela Apple destinadas ao gerenciamento de sistemas macOS. Devo presumir que eles foram traduzidos pelo menos para o alemão e adquirir um dispositivo macOS com o idioma alemão instalado? Ou é tudo sempre em inglês?

Em geral, estou perguntando quanta internacionalização devo esperar das ferramentas de linha de comando forjadas pela Apple.

macos terminal
  • 1 respostas
  • 940 Views
Martin Hope
seagull
Asked: 2022-01-22 08:37:05 +0800 CST

Usando o PowerShell para adicionar uma entrada a "PendingFileRenameOperations" sem interromper as entradas anteriores

  • 5

No meu caso, eu queria usar o valor do Registro em SYSTEM\CurrentControlSet\Control\Session Manager!PendingFileRenameOperationspara excluir um arquivo na reinicialização. Estou usando o PowerShell.
Seria relativamente fácil usar algo como MoveFileou qualquer outro binário de linha de comando para adicionar os dados ao Registro, mas considero uma má forma usar ferramentas de terceiros (mesmo Sysinternals) quando métodos nativos estão disponíveis.

O Problema
PendingFileRenameOperations só faz alguma coisa quando as entradas dentro dele (é um objeto Multistring) são sufixadas com dois caracteres NUL, mostrados no visualizador binário do Regedit como .. ... Adicionar as informações normalmente por meio do PowerShell não funciona e adicionar dados binários, embora possível, limparia todos os dados existentes no valor devido à falta de capacidade do PowerShell (certamente do PowerShell 2.0) de extrair os dados binários de um objeto Registry MultiString.

A pergunta
É possível usar métodos nativos em uma máquina PS2.0 para adicionar entradas de PendingFileRenameOperationsforma que o sistema operacional realmente as reconheça?

windows powershell
  • 2 respostas
  • 425 Views
Martin Hope
seagull
Asked: 2021-07-24 02:48:17 +0800 CST

Qual é a quantidade máxima de RAM que um host pode provisionar para um convidado Hyper-V?

  • 8

Por favor, entenda o que estou pedindo aqui. Não estou perguntando quanta RAM pode teoricamente ser distribuída para uma única VM no Hyper-V, que é 1 TB. O que estou procurando é uma figura ou fórmula que mostre quanto um determinado host com x GB de RAM pode distribuir para uma única máquina virtual via Hyper-V, pois nenhum hipervisor é capaz de fornecer 100% de si a qualquer convidado.

Os requisitos são fixos – ou seja, o Hyper-V sempre requer x MB e a partir daí vale tudo? Ou é sempre uma porcentagem da RAM do Host? Como a memória de vídeo influencia? Eu não me importo se os resultados são um pouco de dar e receber – seria ridículo esperar números exatos até o megabyte – mas qualquer indicação aproximada seria imensamente útil.

Não estou preocupado com várias VMs neste momento. Vamos partir do pressuposto de que este é o único dispositivo que está sendo virtualizado.

virtualization memory
  • 1 respostas
  • 1803 Views
Martin Hope
seagull
Asked: 2019-12-21 09:17:17 +0800 CST

Por que uma política irremovível para "QuicAllowed" faz com que o Google Chrome me diga que é gerenciado por minha organização?

  • 7

Por que uma chave de registro está aparecendo em HKLM:\Software\Policies\Google\Chrome!QuicAllowed? Ele reaparece na reinicialização se eu excluí-lo. Sua presença está fazendo com que o Google Chrome me diga que o navegador é gerenciado pela minha organização, mas não tenho nenhuma organização gerenciando as coisas.

Google Chrome na janela anônima mostrando o gerenciamento por organização

Não é o resultado de uma extensão, pois abrir uma janela anônima faz com que os dados ainda sejam exibidos.
Estou usando o Bullguard Antivirus.

windows google-chrome
  • 2 respostas
  • 18522 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