私が定期的に使用するファイルがいくつかあります。たとえば、いくつかの設定ファイルやログファイルがあります。 Apacheのログファイルを考えてみましょう。私はしばしばtail
それを望んでいますgrep
。以下を書く代わりに:
tail -50 /var/log/apache2/error_log
私は書くことを好む
tail -50 apachelog
したがって、apachelog
そのファイル名のエイリアスとして機能します。ただし、myにエイリアスを定義するには、bashrc
後で参照できるようにファイル名のエイリアスにすることはできない完全なコマンドでなければなりません。これを達成する方法はありますか?
注:実行したいさまざまなファイルとさまざまなコマンドがあるため、これらのさまざまなオプションの関数やエイリアスを作成することは私の好みの解決策ではありません。
ベストアンサー1
以下を使用して変数を定義し、$
その値を呼び出すことができます。
apachelog=/var/log/apache2/error_log
tail -50 $apachelog
Bashではもっとうまくできません。 zshでは、コマンドラインのどこにでも展開されるグローバルエイリアスを定義できます。
alias -g apachelog=/var/log/apache2/error_log
tail -50 apachelog
apachelog
ただし、文字列をコマンドに引数として渡したい場合は、引用する必要があることを覚えておく必要があるため、これはお勧めできません。