GNU/Linux >> Znalost Linux >  >> Linux

Příkaz Linux pro seznam všech dostupných příkazů a aliasů

Přidat do .bashrc

function ListAllCommands
{
    echo -n $PATH | xargs -d : -I {} find {} -maxdepth 1 \
        -executable -type f -printf '%P\n' | sort -u
}

Pokud chcete také aliasy, pak:

function ListAllCommands
{
    COMMANDS=`echo -n $PATH | xargs -d : -I {} find {} -maxdepth 1 \
        -executable -type f -printf '%P\n'`
    ALIASES=`alias | cut -d '=' -f 1`
    echo "$COMMANDS"$'\n'"$ALIASES" | sort -u
}

Můžete použít vestavěný bash(1) compgen

  • compgen -c zobrazí seznam všech příkazů, které můžete spustit.
  • compgen -a zobrazí seznam všech aliasů, které byste mohli spustit.
  • compgen -b zobrazí seznam všech vestavěných modulů, které můžete spustit.
  • compgen -k zobrazí seznam všech klíčových slov, která můžete spustit.
  • compgen -A function zobrazí seznam všech funkcí, které můžete spustit.
  • compgen -A function -abck vypíše všechny výše uvedené najednou.

Podívejte se na manuálovou stránku pro další dokončení, která můžete vygenerovat.

Chcete-li přímo odpovědět na vaši otázku:

compgen -ac | grep searchstr

měli byste dělat, co chcete.


Existuje

type -a mycommand

příkaz, který vypíše všechny aliasy a příkazy v $PATH kde můj příkaz se používá. Lze použít ke kontrole, zda příkaz existuje v několika variantách. Kromě toho... Pravděpodobně existuje nějaký skript, který analyzuje $PATH a všechny aliasy, ale o žádném takovém skriptu nevím.


Linux
  1. Linuxové příkazy:jobs, bg a fg

  2. Zobrazení seznamu všech úloh „at“ a jejich příslušných příkazů

  3. Vypsat všechny příkazy, které Shell zná?

  1. Vygenerujte seznam dostupných příkazů a co každý dělá?

  2. Jak mohu uvést seznam všech zamčených uživatelů v Linuxu?

  3. Jak vygenerovat seznam *všech* dostupných příkazů a funkcí?

  1. Sledujte příkazy a úkoly pomocí příkazu watch v systému Linux

  2. Linuxové příkazy – přehled a příklady

  3. Spouštění příkazů Linuxu na pozadí a v popředí