단일 명령으로 내 C 및 Java 프로그램을 컴파일하고 실행하기 위해이 스크립트를 작성했습니다.쉘 스크립트가 '}'매달려 실행되는 이유는 무엇입니까?
1 run(){
2 gcc -lm $1 && (shift; ./a.out $*)
3 }
4
5 jrun(){
6 clas=`echo $1 | cut -d'.' -f1 `
7 javac $1 && { shift; java $clas $* }
8 }
하지만 실행 중 오류가 발생했습니다.
# source t.sh
-bash: t.sh: line 9: syntax error: unexpected end of file
끝에 '}'
을 추가하면 스크립트가 성공적으로 실행됩니다.
대신 ()
대신 {}
을 사용함을 알게되었습니다.
제 질문은 달리고 '}'
과 함께 잘 작동하는 이유는 무엇입니까?
아무것도 없습니다. 마지막'}'은'jrun {}'을 완성합니다. – VM17
줄 번호가있는 코드는 게시하지 마십시오. – tripleee
오류는 줄 번호를 나타 내기 때문에 줄 번호가있는 게시물. – Yogesh