GNU/Linux >> Linux Esercitazione >  >> Linux

Interfaccia a riga di comando C++

La libreria GNU readline è ottima se desideri funzionalità complete di modifica della riga e cronologia, ma se è sufficiente un semplice prompt (o se non desideri la licenza GNU), puoi farlo solo con la libreria standard:

#include <iostream>
#include <string>

void process(std::string const & line);

int main()
{
    for (std::string line; std::cout << "APP > " && std::getline(std::cin, line); )
    {
        if (!line.empty()) { process(line); }
    }

    std::cout << "Goodbye.\n";
}

Raccomando la libreria GNU readline per questo. Si occupa del noioso lavoro di ottenere righe di input e consente all'utente di modificare la propria riga con backspace, frecce sinistra e destra, ecc. ecc. Readline viene installato con le tipiche distribuzioni unix-like come linux, ma se non ce l'hai, puoi trovarlo qui.

Modifica:ecco un esempio minimo di readline:

#include <stdio.h>
#include <readline/readline.h>
#include <readline/history.h>

int main(int argc, char ** argv)
{
    while(1)
    {
        char * line = readline("> ");
        if(!line) break;
        if(*line) add_history(line);
        /* Do something with the line here */
        free(line);
    }
}

Linux
  1. L'installazione di driver aggiuntivi ha portato all'interfaccia della riga di comando?

  2. vim:comando non trovato

  3. Conversione del fuso orario tramite riga di comando

  4. Come visualizzare un'interfaccia Wi-Fi da una riga di comando?

  5. Risolutore di espressioni da riga di comando?

Comando Diff in Linux

Presentazione dell'interfaccia a riga di comando di Wireshark:TShark

Padroneggia la riga di comando di Linux

Nozioni di base sulla riga di comando di Linux:sudo

comando ip in Linux con esempi

Lettori audio a riga di comando?