Những câu hỏi này đề cập đến chức năng của source
:
Sự khác biệt giữa việc thực thi tập lệnh Bash so với tìm nguồn cung ứng là gì?
'Nguồn' làm gì?
nhưng tôi bối rối không biết tại sao việc gọi source
một kịch bản lại vượt qua các đối số của kịch bản. Ví dụ: tôi có 2 đoạn script này:
người gọi
source sourced.sh
source sourced.sh ""
nguồn gốc
echo [$*]
Khi tôi làm
./caller.sh arg1 arg2
tôi có
[arg1 arg2]
[]
"Arg1 arg2" được chuyển đến sourced.sh mặc dù tôi không chỉ định source sourced.sh $*
.
Tại sao?
Tôi thấy rằng việc thêm "" ngăn các đối số được thông qua. Đây có phải là cách được đề xuất để ngăn chặn các đối số được thông qua?