Wie kann ich verfügbare Befehle anzeigen, die mit einer bestimmten Zeichenfolge enden?

Wie kann ich verfügbare Befehle anzeigen, die mit einer bestimmten Zeichenfolge enden?

Wenn Sie mit der Eingabe beginnen und die Tabulatortaste drücken, versucht die Konsole, alle Befehle, Funktionen und ausführbaren Skripts zu erweitern und anzuzeigen, die mit dem beginnen, was Sie zu schreiben begonnen haben.

Gibt es eine Möglichkeit, zu sehen, welche Befehle die eingegebene Zeichenfolge irgendwo in ihren Namen haben? Nicht unbedingt mit der Tab-Vervollständigung, sondern mit einer kleinen Funktion oder einem Skript.

Ich erinnere mich vielleicht an einen Befehl, der fontim Namen vorkommt, aber nicht am Anfang. Wie kann ich ihn mkfontdirund alle anderen anzeigen lassen?

Oder ich habe möglicherweise ein Skript mit einer Schriftart irgendwo im Namen, aber nicht am Anfang (wie my-fonts.py).

Antwort1

Normalerweise führe ich einen Suchbefehl wie diesen aus

find / -executable -name '*'font 2>/dev/null

Das würde auf meinem Computer folgendes Ergebnis bringen

/usr/bin/showconsolefont
/usr/bin/gnome-thumbnail-font
/usr/bin/splitfont
/usr/bin/showfont
/usr/bin/grub-mkfont
/usr/share/doc/ttf-freefont
/usr/share/doc/fonts-horai-umefont
/usr/share/doc/ttf-umefont
/usr/share/groff/1.21/font
/usr/share/fonts/truetype/freefont
/usr/share/fonts/truetype/horai-umefont
/bin/setfont

Obwohl dieser Befehl in seinen Ergebnissen etwas knapper ist

find / -type f -perm +111 -name '*'font 2>/dev/null

Kehrt zurück

/usr/bin/showconsolefont
/usr/bin/gnome-thumbnail-font
/usr/bin/splitfont
/usr/bin/showfont
/usr/bin/grub-mkfont
/bin/setfont

Antwort2

Da die Ausführung des findvon Doogfar vorgeschlagenen Befehls ewig dauert, können Sie einen Cronjob hinzufügen, um ihn von Zeit zu Zeit auszuführen und an eine Datei zu senden:

find / -type f -perm +111 >~/.perm111 2>/dev/null &

und dann ein schnelles Grep, wenn Sie es brauchen.

grep font ~/.perm111

Antwort3

Ich habe keine Ubuntu-Box, aber dieser Befehl ist unter OS X und OpenSUSE verfügbar:

compgen -ac | grep someStringInCommandName

Referenz:https://stackoverflow.com/questions/948008/linux-command-to-list-all-available-commands-and-aliases

verwandte Informationen