에서 괄호 안에 작동하지 않습니다소스 운영자는 내가이 조건을 내 bash는 스크립트에서 설정 파일을 포함하려면 bash는
config 파일 이름에 - 더 - 플라이 건설 및 저장됩니다- 설정 파일이 존재하지 않는 경우 변수, 그리고 경우에
- 는, 스크립트는 실패 :
config.cfg :
CONFIGURED=yes
test.sh :
#!/bin/sh
$CFG=config.cfg
echo Source command doesn't work here:
[ -f $CFG ] && (source $CFG) || (echo $CFG doesnt exist; exit 127)
echo $CONFIGURED
echo ... but works here:
source $CFG
echo $CONFIGURED
[...] 설명에 잘못된 점이 있습니까?
'if ... then ... else ... fi'를 사용하지 않는 이유는 무엇입니까? – kennytm
다음 행은'$ CFG = config.cfg'에 달러 기호가 없어야합니다. –
게시물에 "bash"라는 태그가있는 동안 스크립트의 숨은 줄은 #!/bin/sh입니다. POSIX 쉘 (/ bin/sh)에는 "source"명령이 없습니다. 당신은 사용해야합니다. 대신./bin/sh가 bash 인 경우 이것을 알아 채지 못할 수도 있지만 대신 대시를 사용하면됩니다. FY – camh