Jak wyszukać polecenie, którego pełnej nazwy nie znam?

10

Za każdym razem, gdy próbuję użyć programu z terminala, nie mogę go znaleźć, ponieważ nie pasuje on do prawdziwej nazwy. Na przykład piszę disksw terminalu, ale prawdziwe jest to gnome-disks.

Próbowałem użyć:

sudo dpkg -l | grep disks 

znaleźć, ale co z programami, które w ogóle nie pasują? Jak najłatwiej znaleźć wszystkie nazwy zainstalowanych programów w terminalu?

Adam
źródło

Odpowiedzi:

4

Spowoduje to wyświetlenie wszystkich nazw stron i krótkich opisów zawierających tekst „dyski”. Zauważ, że to nie zwróci niczego dla skryptów lub programów, które nie mają strony podręcznika, ale każdy program dostarczany z dystrybucją Ubuntu powinien mieć jeden ...

man -k disks

LUB...

apropos disks

Na przykład...

 root@LX02:~  apropos disks
cryptdisks_start (8) - wrapper around cryptsetup which parses /etc/crypttab.
cryptdisks_stop (8)  - wrapper around cryptsetup which parses /etc/crypttab.
mtools (1)           - utilities to access DOS disks in Unix.
smartctl (8)         - Control and Monitor Utility for SMART Disks
udisks (1)           - udisks command line tool
udisks (7)           - Storage Management
udisks-daemon (8)    - udisks Daemon
DocSalvager
źródło
3

Najprostszym sposobem jest sprawdzenie „startera programu” za pomocą edytora menu:

  • kliknij prawym przyciskiem myszy przycisk menu na pasku zadań;
  • wybierz Edit Menu- otworzy się edytor menu.

Teraz możesz wybrać kategorię po lewej stronie i aplikację po prawej stronie ( Entries). Wystarczy wybrać aplikację jednym kliknięciem lewym przyciskiem myszy, otworzyć menu kontekstowe prawym przyciskiem myszy i wybrać Properties. Pojawi się małe okno pokazujące (między innymi) wiersz poleceń.

Te pliki startowe programów zwykle znajdują się w folderze /usr/share/applications, więc innym podejściem byłoby sprawdzenie *.desktopplików w tym katalogu. Jeśli nie masz pewności co do nazwy, której szukasz *.desktop, zrób grep z /usr/share/applicationskatalogu:

grep gThumb * | grep 'Name='

da ci coś takiego

gthumb.desktop:Name=gThumb
gthumb.desktop:X-GNOME-FullName=gThumb Image Viewer
gthumb-import.desktop:Name=Import with gThumb
gthumb-import.desktop:X-GNOME-FullName=gThumb Photo Import Tool

Teraz możesz po prostu użyć less gthumb.desktopdo sprawdzenia szczegółów tego programu startowego.

Innym sposobem byłoby użycie apropospolecenia do wyszukania określonego słowa kluczowego na stronach podręcznika man.

tohuwawohu
źródło
1

for bin in $(for path in $(tr ':' '\n' <<<"$PATH"); do echo $path; done); do ls $bin; done |grep 'disk'

Powyższa pętla wylicza każdy plik w każdym katalogu twojego $PATHi pokazuje każdy plik pasujący do wyrażenia regularnego (w tym przypadku „dysk”) przekazany do grep na końcu potoku.

Jeśli masz w swoim pliku pliki niewykonywalne, $PATHto również to pokaże.

cpugeniusmv
źródło
0

Może nie to, co chcesz usłyszeć, ale zsh (zshell) wykonuje świetną robotę w zakresie wykonywania poleceń. Jest (wstecznie) kompatybilny z bash, więc nie musisz uczyć się czegoś zupełnie nowego.
Z och-my-zsh jest dobry punkt początkowy ustawień, które można łatwo dostosować do własnych upodobań.

Jeśli wpiszesz „dysk” w moim terminalu, automatycznie zasugeruje następującą listę, którą można przejść.
cfdisk fdisk lvmdiskscan mkdiskimage sgdisk udisks udisks-tcp-bridge umount.udisks2
cgdisk gdisk memdiskfind sfdisk testdisk udisksctl umount.udisks

Jak zapewne zauważyliście, nie uruchamiam gnoma, więc nie ma dysków gnome, ale na pewno by to znalazł, gdyby był obecny.

cee
źródło