アプリ版:「スタンプのみでお礼する」機能のリリースについて

他の人が作成してシェルスクリプトを見たら以下の記述がありました。
. /xxx/y.conf
. /xxx/y.fnc
. /xxx/y.cfg
このような使い方を今まで見たことがなく、これはどんな使い方の意味あいなのでしょうか。
. の後にブランクがあり、ファイルを指定しております。
例えば
「. ブランク」なしでファイルを直接記述するのと何が違うのか。
. /xxx/y.txt
でも問題なくどんなものも読み込むのか教えて下さい。

A 回答 (3件)

シェルスクリプトの . (ドット)はsourceコマンド(内部コマンド)の簡略形ですよね。


要するにシェルスクリプトを実行しているシェルプロセスでドット+ブランクの後のファイル名で示されたファイルを読み込んでスクリプトとして処理するわけです。
一方で .filename はドットで始まるファイル名のファイルで、そのファイルに実行権限があれば実行されます。それがシェルスクリプトのファイルなら新しいシェルプロセスが起動して実行されます。
    • good
    • 0

実行するプロセスが「現在のプロセス」なのか「新しい (別の) プロセス」なのか, という視点は無視できない.



シェル変数はそれぞれの (シェル) プロセスごとにあるから「別のシェル」で設定しても意味ないし, 環境変数も「親プロセスから子プロセスに渡される」けどその逆は起きない. だから, 「現在のシェルで変数を設定する」ためには「そのプロセス」で実行しなければならない.
    • good
    • 0

https://qiita.com/akase244/items/4832e9d332c2767 …

指定されたファイルで環境変数などに設定したものを適用したり…が主でしょうかね。

>「. ブランク」なしでファイルを直接記述するのと何が違うのか。

実行属性付いていないとダメかと。あと、PATHですかね。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!