~によるとフラスコ公式チュートリアル:
プロジェクトの作業をしたいときはいつでも、その環境を有効にするだけです。 OS X および Linux では、次のことを行います。
$ . venv/bin/activate
これはうまくいきます。しかし./venv/bin/activate
、との両方を実行しようとすると、両方をvenv/bin/activate
取得します-bash: venv/bin/activate: Permission denied
。
私の質問は:それは何をしますか.
?
ベストアンサー1
この場合、ドットはシェルキーワードと同義語ですsource
。これは、ファイルを読み込み、コマンドラインに直接入力したかのように各行を実行することです。権限に関する限り、必要なのはファイルへの読み取りアクセスだけです。
シェルコマンドを使用してファイルを取得することは、シェルスクリプトを呼び出すのとは異なります。シェルスクリプトには実行権限が必要です(これが権限が拒否される理由です)、独自の(非対話型)シェルを起動します。