10

sourceそのため、スクリプトが現在のディレクトリにある場合、そのスクリプトを作成できないようです。例えば、

# source some/dir/script.sh
Ok

正常に動作しますが、スクリプトと同じディレクトリにいる場合は、エラーが発生します。

# cd some/dir
# source script.sh
-sh: source: script.sh: file not found

何が得られますか?これを回避してディレクトリを変更する唯一の方法はありますか?

必要に応じて、AngstromLinuxでbashv4.2.10を使用しています。

4

3 に答える 3

18

ソースのマニュアルページを引用:

ソースファイル名 [引数]

....

filename にスラッシュが含まれていない場合、PATH 内のファイル名を使用して file-name を含むディレクトリを検索します。

それで...はに含まれるフォルダでsourceあなたを検索しようとしています。script.shPATH

現在のフォルダーでファイルを取得する場合は、次を使用します

source ./script.sh
于 2013-02-15T08:25:10.180 に答える
1

絶対パスを使用してください -- source /root/path/to/some/dir/script.sh-- ソートする必要があります。

于 2013-02-15T07:22:38.387 に答える