Existe um comando para descobrir a memória disponível no Windows?

25

Eu estou procurando um comando que retorna a memória física disponível no Windows. Eu tentei "systeminfo", mas leva muito tempo e retorna muita informação desnecessária para mim. Se não houver nenhum comando para isso, qual seria a melhor maneira de obtê-lo de maneira diferente usando o prompt de comando?

Hakan
fonte
1
Para um riso você pode digitar memuma cmdconcha, mas isso não vai te levar muito longe :-)
Mat
1
Qual versão do windows?
EBGreen
@ Mat 941kB na memória XMS, ha ha :-D
Tomas

Respostas:

35

Demora algum tempo (cerca de 10 segundos para mim), mas o seguinte comando irá fazê-lo:

systeminfo |find "Available Physical Memory"
Mehper C. Palavuzlar
fonte
4
Observe que isso depende do idioma do sistema operacional. Meu exemplo acima funciona para sistemas operacionais em inglês. Por exemplo, para um sistema operacional turco, a seguinte linha de comando deve ser usada:systeminfo |find "Kullanılabilir Fiziksel Bellek"
Mehper C. Palavuzlar
1
Este é um exemplo do meu PC mostrando uma tela do resultado.
Mehper C. Palavuzlar
se você acabou de "encontrar" Memória "", em vez disso, dá uma visão geral de tudo isso. Total, Disponível, Virtual: Disponível, Virtual: Em Uso
PsychoData
1
Muito lento ... altamente não recomendado. Para mostrar memória, ele precisa varrer todo o sistema.
majkinetor
10

Bem, se você estiver no Windows 7, você pode usar isso no prompt do powershell:

(Get-WMIObject Win32_PhysicalMemory |  Measure-Object Capacity -Sum).sum

Ou se você quiser um bom bonito quantos shows é isso:

(Get-WMIObject Win32_PhysicalMemory |  Measure-Object Capacity -Sum).sum/1GB

Ou se você estiver em uma versão mais antiga do Windows (ou W7) no prompt de comando:

wmic memorychip get capacity
EBGreen
fonte
Vale a pena notar que, embora msinfo32seja utilizável por não-administradores para esse fim, wmicnão é.
JdeBP
2
Eu acho que isso pode ser uma questão política. Acabei de executar o comando wmic bem como um não administrador.
EBGreen
Não, não é um problema de política. Ele também falha em máquinas que não são de domínio. A mensagem que você verá como não-administrador é Only the administrator group members can use WMIC.EXE..
JdeBP
3
Bem, eu não sou um administrador e não vi essa mensagem. Em vez disso, vi a capacidade dos dois cartões de memória instalados naquela máquina.
EBGreen
3
Apenas verifiquei para ter certeza e o ID do usuário com o qual eu estava conectado não é membro do grupo Administradores local, nem é membro de nenhum dos grupos do AD que são administradores locais.
EBGreen
7

Isso será feito sem levar 10 segundos. Tente isto:

Para memória física total

wmic ComputerSystem get TotalPhysicalMemory

Para memória física disponível:

wmic OS get FreePhysicalMemory
Waqar
fonte
6

E se

typeperf "\Memory\Available Bytes"

no prompt do cmd ou do powershell? Você pode encontrar outras instâncias de monitoramento com o comando

typeperf -qx "\Memory"
Ahreum Lee
fonte
Observe que os nomes do contador de desempenho dependem do idioma. Portanto, em um sistema não inglês, os comandos apresentados falharão.
Robert
3

Você já conhece systeminfo, conforme a pergunta. E como Mat observou em um comentário, o memcomando não diz o que você quer saber.

O TCC / LE da JP Software possui o MEMORYcomando interno , que opera assim:

Memória [C: \]

           30% de carga de memória

  RAM física total de 3.471.441.920 bytes
  2.428.456.960 bytes de RAM física disponível

  5,440,962,560 bytes de arquivo de paginação total
  4.505.726.976 bytes de arquivo de paginação disponíveis

  2,147,352,576 bytes de RAM virtual total
  2.053.435.392 bytes de RAM virtual disponível

        Alias ​​do total de 262.144 caracteres
        262.143 caracteres grátis

         Histórico total de 20.480 caracteres

[C: \]

Também possui a @WINMEMORY[]função variável , que pode ser usada de várias maneiras:

[C: \] echo Há% de RAM física de bytes disponíveis de% @ COMMA [% @ WINMEMORY [2]].
Há 2.456.285.184 bytes físicos disponíveis.

[C: \]

Juntamente com o Windows vem o msinfo32comando, cuja saída pode ser restrita mais restrita do que a de systeminfo:

msinfo32 / categories + systemsummary

Há toda uma carga de outros utilitários, de várias pessoas, que podem relatar as mesmas informações.

JdeBP
fonte