私は最近それを学んだ
. ./.a.a
そして./.a.a
それは同じです。
ただしsource source .a.a
、試してみるとエラーが発生します。 IMOは.
Bashエイリアスになってsource
別の方法で動作してはいけませんが、私が何を見逃しているのでしょうか?
ボーナス、なぜ. .
可能ですが不可能ですかsource source
?
答え1
次の場合は.
どこでも交換できません。source
. ./.a.a
効果的に最初のものを変更できます.
(少なくともBashでは):
source ./.a.a
2番目は、.
置き換えられない現在のディレクトリを表しますsource
(特に以前とは異なります./
)source
。
source source
source
現在のシェルに適した内容で現在のディレクトリのファイルを呼び出すことで問題ありません。どうやって. .
いいのかわからない…
. ./.a.a
また、2番目の形式は別々のシェルで実行される./.a.a
点で異なります。.a.a
バラよりソース("."または"source")とbashでのファイル実行の違いは何ですか?もっと学ぶ。
答え2
source
はシェルキーワードで、次のように使用する必要があります。source
file
どこfile
有効なシェルコマンドが含まれています。これらのシェルコマンドは、コマンドラインで入力したように現在のシェルで実行されます。今、.
file
まったく同じように作られています。
それ以外の場合は、(「このディレクトリにあります」)または(と同じ).
などの「現在の作業ディレクトリ」を意味します。./xyz
xyz
a/b/./c/./d
a/b/c/d
それ以外のファイル名には、「隠された」ファイル(実際にはそうではありません)またはサフィックスを介したファイル形式(ここ)を意味する.
一般的な意味しかありません。.foobar
foobar.pdf
.pdf
これらの異なる意味は、互いに置き換えて使用することはできません。