2017-06-30 5 views
-3

私はそれが設定ファイルだと知っていますが、.bashrcをソースとして使用すると、実際にはそれをbashで行単位で実行しています。私も知っている、その拡張機能はLinuxではあまり機能しませんが、bashスクリプトを書くときには "* .sh"という名前を付けてください.bashrcは同じですが、唯一の違いはデフォルトでソースされているということです。.bashrcのようなファイルに拡張機能を使用しないのはなぜですか?

+0

を必要としませんファイル拡張子 ' –

答えて

2

Linuxはファイルにどのような拡張子を付けても実際にはそれを実行できるかどうか、または実行権限があるかどうかだけをチェックします。

Linuxが本当に気にしているのは、ファイルの先頭の#!/ path/to/interpreterです。 #!/bin/bashのように。これは、bourne againシェルがファイルの内容を解釈するために使用されることを意味します。 Linuxは拡張子を気にしません

は、.SHは、あなたの利便性

  • .bashrcファイルは、新しい端末セッションが対話モードで起動されるたびに実行されるスクリプトであるためにそこにあります。これは、Ctrl + Alt + Tを押して新しいターミナルウィンドウを開くか、新しいターミナルタブを開くだけです。
  • .bashrcファイルには、ターミナルセッション用の一連の構成が含まれています。これには、色付け、補完、シェル履歴、コマンドエイリアスなどの設定や有効化が含まれます。
  • ボーンは再びシェル私はあなたが何の線に沿って何かを依頼された場合、これは良い質問かもしれないと思う、.bashrcファイルを読み込むものですので、それに拡張子を与えることは事実上無用であると
+0

** ** Linuxは拡張機能を気にしません。.shはあなたの便宜のためだけに**人々がシェルスクリプトを覚えているようにそれらのスクリプトに.shという名前を付けます。私はすでにあなたの質問に答えていました。 –

+0

あなたが書いたもののどれも本当に私の質問に答えません。 単純なbashスクリプトを書くときには、「* .sh」という名前を付けることがよくあります。だから、私は実際には "拡張機能は実質的に役に立たない"(私はそれを知っている)か、または.bashrcがどのように動作するか気にしない - 私はすでにそれを知っている。私が知りたいのは: **人々がなぜスクリプトに "* .sh"という名前を付けるのかという歴史的/実用的な理由はありますが、.bashrcを書くときにはそれは間違いです。** – okmanek

+0

これは別のフォーラムのトピックです。 –

関連する問題