config.sh

config.sh

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.

관련 정보