44

私は通常ps -elf | grep proceesname、という名前のプロセスの詳細な説明を取得するために使用しますprocessname。これには書きすぎだと思います。

今私が考えていたのは、次のようなbashエイリアスを作成することです

alias lsps='ps -elf | grep $1'

これは、を使用するだけで上記の詳細な説明を提供しlsps processnameます。

だから、私の質問は、引数を受け入れるbashエイリアスをどのように作成するかです。

PS:上記のタスクのシェルスクリプトを作成できることは知っていますが、bashエイリアスを使用してそれを行う方法を考えていました。

4

2 に答える 2

75

非常にシンプルです。

alias lsps='ps -elf | grep'

コマンドライン引数は、エイリアスの最後に自動的に追加されます。

lsps arg1 arg2 arg3 => converted to => ps -elf | grep arg1 arg2 arg3

これは、エイリアスの最後に引数を追加する場合にのみ機能します。

拡張コマンドライン内でエイリアスの引数を取得する場合は、次の関数を使用する必要があります。

例えば:

lsps()
{
    ps -elf | grep "$1" | grep -v grep
}

関数とエイリアスは、~/.bashrcファイル)またはそこに含まれるファイルに保存できます):

$ cat /tmp/.bash_aliases
lsps()
{
    ps -elf | grep "$1" | grep -v grep
}

$ . /tmp/.bash_aliases
$
于 2012-07-13T08:03:45.587 に答える
7

これを使って:

alias lsps='ps -elf | grep'

次に、これを発行できます。

lsps processname
于 2012-07-13T08:02:11.690 に答える