GNU/Linux >> Linux Esercitazione >  >> Linux

Suggerisci l'installazione di pacchetti durante l'esecuzione di un comando non disponibile

Come forse già saprai, quando eseguiamo un comando non disponibile o non riconosciuto in Linux, riceveremo un messaggio di errore - "bash:comando non trovato" . Il problema è che alcuni di noi non sanno quali pacchetti forniscono quel particolare comando. Non più! Oggi mi sono imbattuto in un'utile utility chiamata "comando-non-trovato" che ti aiuta suggerendo l'installazione di pacchetti quando esegui un comando non disponibile.

Diciamo che vuoi eseguire un comando chiamato "leafpad", che non è disponibile nel tuo sistema Linux. Non sei sicuro di quali pacchetti forniscano questo comando. È qui che viene in aiuto l'utilità "comando non trovato".

Cercherà automaticamente nei repository ufficiali, quando si immette un comando non riconosciuto o non disponibile. Utilizza una cache di programmi esistenti e dei loro pacchetti associati per aiutare gli utenti nel loro lavoro quotidiano da riga di comando.

Installa l'utilità comando non trovato in Linux

L'utilità comando non trovato è disponibile in AUR. Quindi, puoi installarlo usando gli helper AUR come Paru o Sì.

$ paru -S command-not-found

Oppure,

$ yay -S command-not-found

Inoltre, pkgfile il pacchetto fornisce hook di comando non trovato. Installa semplicemente pkgfile per utilizzare l'utilità comando non trovato.

$ sudo pacman -S pkgfile

Una volta installato, modifica il tuo .bashrc file:

$ vi ~/.bashrc

Aggiungi la riga seguente alla fine per abilitarlo.

source /usr/share/doc/pkgfile/command-not-found.bash

Aggiorna le modifiche apportate utilizzando il comando:

$ source ~/.bashrc

Su Ubuntu e i suoi derivati, è preinstallato.

Nel caso in cui non sia già installato, puoi installarlo come segue.

$ sudo apt-get update
$ sudo apt-get install command-not-found

Suggerisci l'installazione di pacchetti durante l'esecuzione di un comando non disponibile

Ora esegui qualsiasi comando non disponibile, ad esempio leafpad :

Ti suggerirà quale pacchetto fornisce questo comando. Ecco l'output del mio sistema Arch Linux.

$ leafpad 
leafpad may be found in the following packages:  
extra/leafpad 0.8.18.1-5 /usr/bin/leafpad

Come puoi vedere nell'output sopra, il comando "leafpad" è fornito dal pacchetto leafpad-0.8.18.1-5.

Proviamo un altro comando su Ubuntu:

$ emacs
The program 'emacs' can be found in the following packages:
 * emacs24
 * emacs24-nox
 * e3
 * emacs23
 * emacs23-lucid
 * emacs23-nox
 * emacs24-lucid
 * jove
Try: sudo apt-get install <selected package>

Questo è solo un esempio. Questa utilità suggerirà l'installazione di pacchetti quando si esegue un comando non disponibile. Una volta rimossa questa utility, non suggerirà nulla. Visualizza semplicemente un output simile a quello di seguito.

"bash: emacs: command not found"

Spero che questo aiuti.


Linux
  1. eseguendo un comando su ogni riga in un file di testo

  2. Come eseguire un comando all'interno di un contenitore Systemd in esecuzione?

  3. Ubuntu:eseguire un comando quando viene inserito un Cd/dvd/bd?

  4. Dove vanno a finire i file quando viene emesso il comando Rm?

  5. Esecuzione di comandi Linux in background e in primo piano

Installazione di Ubuntu 20.04 Zoom

apt Comando in Linux

Undistract-me:ricevi una notifica quando vengono completati i comandi del terminale di lunga durata

Esempi di comandi Alpine Linux Apk

Correggi "Errore di formato Exec" durante l'esecuzione di script con il comando run-parts

apt comando Linux con esempi