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 / ubuntu / Perguntas / 1516019
Accepted
Archisman Panigrahi
Archisman Panigrahi
Asked: 2024-05-31 19:54:52 +0800 CST2024-05-31 19:54:52 +0800 CST 2024-05-31 19:54:52 +0800 CST

Como verificar se o computador é um laptop ou desktop usando linha de comando?

  • 772

Estou escrevendo um script bash para configurar todo o software necessário após instalar o Ubuntu. Se o computador for um laptop, desejo instalar o tlp para gerenciamento de energia. Se for um desktop, o tlp não é necessário.

Existe um comando com o qual posso descobrir se o computador é um desktop ou um laptop/tablet?

Talvez detectar a presença de uma bateria seja a assinatura que devo procurar.

command-line
  • 2 2 respostas
  • 1501 Views

2 respostas

  • Voted
  1. Best Answer
    FedKad
    2024-05-31T20:26:34+08:002024-05-31T20:26:34+08:00

    Não acho que verificar a bateria seja uma boa solução: um desktop pode ter UPS que aparece como bateria.

    Você pode usar o comando:

    $ hostnamectl chassis
    laptop
    

    A saída será

    "desktop", "laptop", "conversível", "servidor", "tablet", "handset", "watch", "embedded", bem como os tipos de chassis especiais "vm" e "container" para sistemas virtualizados que falta um chassi físico imediato.

    Ver man hostnamectl.


    Outra opção seria usar:

    $ sudo dmidecode -s chassis-type
    Notebook
    

    Observe que neste caso, a saída pode ser algo como “Laptop”, “Notebook”, “Portátil”, “Portátil” ou “Sub Notebook” dependendo da designação do fabricante.


    Também existe um script chamado:

    $ laptop-detect -v
    We're a notebook (chassis_type is 10)
    

    Você pode inspecionar seu /bin/laptop-detectconteúdo ( ) para uma abordagem mais detalhada.

    • 24
  2. Ajay
    2024-05-31T20:36:04+08:002024-05-31T20:36:04+08:00

    Verificar se o sistema possui ou não bateria não é confiável - um no-break conectado ao sistema pode aparecer como uma bateria (que apareceu quando verifiquei).

    Então uma maneira é usar dmidecodepara obter o tipo de chassi do sistema:

    dmidecode --string chassis-type
    

    Mas este comando requer sudo. Para evitar o uso de sudo, você pode imprimir o conteúdo de /sys/class/dmi/id/chassis_type, que retornará o valor decimal do tipo de chassi.

    cat /sys/class/dmi/id/chassis_type
    

    Mas quando verifiquei, ambos os comandos forneceram resultados onde meu desktop foi considerado como "Rack Mount Chassis" (valor decimal 23) e meu laptop como "Notebook" (valor decimal 10). Portanto, pode variar de acordo com o sistema que estamos manipulando.

    Foi então que usei o hostnamectlcomando e obtive valores melhores do nome do chassi e do ícone :

    hostnamectl status | grep Chassis | cut -f2 -d ":" | tr -d ' '
    

    Como minha máquina desktop não tinha nenhuma opção de chassi , usei o valor do nome do ícone :

    hostnamectl status | grep "Icon name" | cut -f2 -d ":" | tr -d ' '
    

    Então no meu laptop o resultado foi " computador-laptop ", no desktop é apenas " computador " e no meu servidor é " computador-vm ". Você pode usar esses valores para instalar o tlp no sistema.

    • 7

relate perguntas

Sidebar

Stats

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

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

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