2012-08-24 2 views
0

ssh를 사용하여 심볼릭 링크를 만들려고합니다. 여기 내가 사용하고있는 명령들.-bash 구문 오류 "fi"

cd /home 
for homedir in * 
do if [ -d ${homedir} ] 
ln -s /etc/cpbackup-exclude.conf ${homedir}/cpbackup-exclude.conf 
fi 
done 

내가 입력 한 후이 오류가 발생합니다. "-bash : 예기치 않은 토큰 '파이'

근처에 구문 오류가 내가 잘못이 무엇인지 확실하지 않다

당신의 도움이

+0

들여 쓰기가 필요합니다. – squiguy

+3

'if ... then ... fi' – kev

+0

죄송합니다. ssh에 익숙하지 않습니다. 무슨 소리 야? – BostonBB

답변

3

if 명령의 구문 주셔서 감사 것은 :

if test-commands; then 
    consequent-commands; 
[elif more-test-commands; then 
    more-consequents;] 
[else alternate-consequents;] 
fi 
코드에

추가 키워드 then :

if [ -d ${homedir} ] 
then 
    ln -s /etc/cpbackup-exclude.conf ${homedir}/cpbackup-exclude.conf 
fi 

자세히 알아보기 쉽게 코드를 들여 쓸 수 있습니다.

+0

감사합니다. 이제이 오류가 발생합니다. bash : In : 명령을 찾을 수 없습니다. – BostonBB

+1

@BostonBB : 어떻게 든'$ PATH'를 망쳤어야합니다. 우리는 그 일이 어떻게 일어 났는지 알기에 충분한 정보가 없습니다. 'ln'은 근본적인 명령이며,'/ bin' 그리고/또는'/ usr/bin'에서 사용 가능해야합니다. –

1

if 문의 조건 뒤에 then 키워드가 필요할 수도 있습니다.

here을 참조하십시오.

관련 문제