. とはどういう意味ですか? /path/command`は何をしますか? (ドットの後の空白、絶対パス)

. とはどういう意味ですか? /path/command`は何をしますか? (ドットの後の空白、絶対パス)

~からこのBash完了ガイドBashがオートコンプリートを実行するには、以下を実行する必要があることを学びました. /etc/etc/bash_completion.d/foobar以来、空間に注目.) Bash がタスクを実行できるようにします。

$ /etc/bash_completion.d/ssh
bash: /etc/bash_completion.d/ssh: Permission denied
$ . /etc/bash_completion.d/ssh
$ ls -l /etc/bash_completion.d | grep ssh
-rw-r--r-- 1 root root   297 Jan 28 18:04 ssh

コマンド.のショートカットですかsourceそうでなければ何ですか? Google検索は不可能で、man source何も返さず、私が探しているものがあるかどうかわからないほど無関係な情報をapropos source提供しすぎます。info sourceこの質問に対する答えを直接見つけるためにRTFMを起動するにはどうすればよいですか?

ベストアンサー1

.機能と同じですsource

いつものように、最初の参考資料は次のとおりです。man bashマニュアルページで以下を検索して初期推測を確認できます。/ source

...またはソースを使用して実行されるシェル関数またはスクリプト....

最初の参照ですが、さらにはセクションを見つけることができます。シェル組み込みコマンド

. filename [arguments]
source filename [arguments]
現在のシェル環境でfilenameのコマンドを読み取り、実行し、filenameで最後に実行されたコマンドの終了ステータスを返します。ファイル名にスラッシュが含まれていない場合は、PATHのファイル名を使用してファイル名を含むディレクトリを見つけます。 PATHで検索されたファイルは実行可能である必要はありません。 Bash が posix モードでない場合、PATH でファイルが見つからない場合は、現在のディレクトリを検索します。 shopt 組み込みコマンドの sourcepath オプションがオフの場合、PATH は検索されません。引数が指定されると、filenameが実行されたときに位置引数になります。それ以外の場合、位置パラメータは変更されずにそのまま残ります。戻り状態はスクリプトの最後の終了コマンド状態(コマンドが実行されていない場合は0)で、ファイル名が見つからないか読み取れない場合はfalseです。

実際、これはbashが組み込まれているため、ソースコードに独自のマニュアルページがなく、これが失敗する理由です。

おすすめ記事