2017-11-28 12 views
0

쉘 스크립트를 처음 작성했으며 인터넷에서 자습서를 보았습니다. 이제 첫 번째 스크립트를 작성하려고합니다. 간단합니다.쉘 스크립트가 종료되지 않고 수동으로 삭제해야합니다.

#! /bin/csh 
echo "Hello World! \a \n" 
exit 0 

간단하고 정확하며 내 단말기에는 Hello World가 표시되지만 종료되지는 않습니다. 셸을 중지하려면 Ctrl + C를 눌러야합니다.

하지만

#! /bin/sh 
echo "Hello World! \a \n" 
exit 0 

을 시도 내가 첫 번째 줄은 스크립트를 실행하는 데 사용할 어떤 쉘 지정하는 것을 알고, 일반적으로 종료 될 수있다, 나는 알아 내기 위해 set 명령을 사용하여 내 기본 셸은 /bin/csh

입니다.이 서버의 다른 사용자는 모두 괜찮습니다. 모두가 문제를 해결할 수있는 방법을 알고 있습니까? 내 친구가 작성한 쉘 스크립트를 사용할 수 없습니다.

+0

어느 튜토리얼은 C 쉘 스크립트에 대한 매우 중요한 뭔가를 놓친하거나 튜토리얼을 놓쳤다. –

+0

안녕하십니까, 답장을 보내 주셔서 감사합니다.하지만 동일한 서버에서 동일한 스크립트를 사용했지만 다른 사용자의 계정은 정상입니다. – pilistar0222

+0

csh와 sh는 두 가지 다른 언어입니다. 이 사소한 경우 구문은 비슷하지만 한 구조의 구조가 다른 구조에서 작동한다고 가정하거나 같은 것을 의미하지는 않습니다. – tripleee

답변

0

#!/bin/csh를 #!/bin/csh -f 작동합니다! 하지만 여전히 같은 서버의 다른 사용자가 왜 혼동 스럽습니까? shebang이/bin/csh없이 -f없이 존재하는 스크립트를 사용할 수 있습니다.

내 ~/.cshrc에 문제가 있습니까? 또 다른 대답은 다시

은 내가 "소스 파일 이름" 하여 스크립트를 실행하면 정상적으로

그래서

를 종료 것으로 나타났습니다 게시물에 대한

+0

'.cshrc'가이 문제를 일으킬 수 있다고 생각하지 않지만, csh가 때때로 이상합니다.'.cshrc' 코드를 보여주십시오. 어떻게 스크립트를 실행하고 있습니까? – cdarke

+0

.cshrc를 제거하려고 시도했지만 여전히 종료되지 않았습니다. QQ – pilistar0222

+0

'.cshrc'를 제거하면 안됩니다. 중요한 설정이있을 수 있습니다. '.login'을 가지고 있습니까? 그렇다면 제거하지 말고 질문에 표시하십시오. – cdarke

0

미안 해요, 어쩌면 내 아이 쉘이 정상적으로 닫을 수없는 이유가 그리고 아마 루프에? 당신은 당신이 과정은 왼쪽 여전히 실행되는 것을 볼 수 있습니다 스크립트를

$ 화면 ./script.sh

을 실행하는 화면 명령을 사용할 수 있습니다

+1

나는 그것이 https://stackoverflow.com/questions/35708942/tcsh-script-does-not-exit와 같은 문제인 것을 발견했다. 단지 .history를 삭제하면 좋다. – pilistar0222

0

.

$ 화면 -r