config.sh
hi="/home/user"
date_sec=`date '+%s'`
이것은 내 파일입니다1.
main.sh
source config.sh
cd $hi
echo "$date_sec"
소스가 main.sh에서 작동하지 않습니다.
답변1
일부 쉘에서는 스크립트에 대한 경로를 제공하지 않는 한 source
사용 가능한 파일이 필요합니다 .$PATH
$ ksh93 main.sh
main.sh[1]: .: config.sh: cannot open [No such file or directory]
명령을 다음으로 변경
source ./config.sh
이 문제를 해결해야합니다.
또한 .
(점)은 source
예보다 이식성이 뛰어나고 작동하며 dash
다음과 같이 가장하는 다른 쉘에서도 작동해야 합니다 sh
.
. ./config.sh
그 외에도,$( ... )
새 스크립트에서는 백틱 대신 백틱 사용을 고려하세요 ., 그리고변수를 인용하는 것을 잊지 마세요. 나도 제안하고 싶다변수 출력 printf
보다는 사용echo
.