ターミナルで定義されたすべてのエイリアスをリストおよび編集するにはどうすればよいですか?


93

私の前に私の現在のMacを所有していた友人が多くのエイリアスコマンドを作成しました。定義されたすべてのエイリアスとそれらに関連付けられているコマンドを一覧表示する方法はありますか?

もしそうなら、それらを編集することはできますか、それともunaliasを使用してそれらを削除し、再作成する必要がありますか?

回答:


105

必要なことはalias、プロンプトで入力するだけで、アクティブなエイリアスがリストされます。

エイリアスは通常そうに見えるあなたのシェルの初期化時にロードされている.bash_profileか、.bashrc自分のホームディレクトリに。

unalias現在のセッションでのみ機能します。定義されてロードされている場所が見つからない限り、新しいターミナルセッションを開始すると再びロードされます。

~/.bashrcログインシェルと非ログインシェルの両方で実行され、ログインシェルで~/.bash_profileのみ実行されます。

ログインシェルと非ログインシェルをご覧ください

Chris Pageからのコメントによると:

あなたには(別名を含む)カスタマイズのほとんどを置くべき~/.bashrcとしている~/.bash_profile実行する~/.bashrcので、彼らは、ログインの両方に適用(~/.bash_profile)し、非ログイン(~/.bashrc)シェル。また、これらのどれを「プライマリ」にするかを決定し、プロファイルが選択である場合、最後にrcファイルを追加します。rcファイルがプライマリである場合、プロファイルの先頭にあるソース

これらの行はファイルにあるはずです~/.bash_profile

if [ -f "$HOME/.bashrc" ] ; then
  source $HOME/.bashrc
fi

これには~/.bashrc、ログインシェルと、設定内容に基づいて1つのファイルが他のファイルに依存する場合の希望する順序が含まれます。


1
カスタマイズのほとんどを〜/ .bashrcに置き、〜/ .bash_profileを〜/ .bashrcで実行することをお勧めします。これにより、カスタマイズはログイン(〜/ .bash_profile)シェルと非ログイン(〜/ .bashrc)シェルの両方に適用されます。例えば、〜/ .bash_profileの中でこれを置く:if [ -f "$HOME"/.bashrc ]; then . "$HOME"/.bashrc fi
クリス・ページ

9

これらのファイルを確認する必要があります。

/etc/profile
~/.profile
~/.bash_profile
~/.bashrc

これらは、シェルのもっともらしい起動ファイルです(bashであると想定しています)。


「.bashrc」はファイルの正しい名前です。
クリスページ

あなたは正しい、私はそのように書いた理由はありません。
セドリック

コメントなしで編集しただけでしたが、StackExchangeでは1文字の編集はできませんでした。
クリスページ

また、システム全体の/ etc / bashrc
EmmEff

sourceまたはを使用してソースされたすべてのファイルを忘れないでください。(ドット)これらのファイル。
ManuelSchneid3r
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.