개발 Q&A

제목 쉘스크립트 질문합니다
카테고리 서버
글쓴이 우왕 작성시각 2017/07/13 11:12:34
댓글 : 13 추천 : 0 스크랩 : 0 조회수 : 11968   RSS

ci 일반 게시판은 모든 질문 올려도 되는 곳이죠??

아니라면 죄송합니다.

 

리눅스 쉘스크립트 관련 질문인데요

 

test.sh

=====================

cd /main/test/var/

java -jar ./test.jar

=====================

라는 파일이 있으면...

 

cd 해당 경로로 이동하고

거기에 있는 jar 파일을 실행하라는 명령을 준 건데..

저 위에 있는 게 맞나요....?

 

흠...크론탭에 등록해놨는데

안 먹는거 같아서 질문드려요

 

감사합니다!

 

아참! 크론탭에 등록한걸로 별도로 실행하면 잘 먹히는데

크론탭에 

 

* * * * * /경로/test.jar 했는데 그거는 안 먹히는 것 같아서요~

 다음글 리눅스 질문이요! alias등록한 변수를 못찾는 경우?... (3)
 이전글 윈도우서버에서 컨트롤러. (3)

댓글

한대승(불의회상) / 2017/07/13 11:15:45 / 추천 0
java가 설치된 절대경로를 지정해서 테스트해보세요.
우왕 / 2017/07/13 11:20:40 / 추천 0

음 어떤식으로 줘야하나요?

 

java -jar [jdk경로] 쓰고서 특정 경로에 있는 파일명을 써야하나요?;;

 

방금 구글링을 해봤는데...키워드를 제대로 못줘서 그런건지...원하는 답을 못찾았습니다....

유창화 / 2017/07/13 12:49:10 / 추천 0

만약 /home/aaa/html/test.jar 에 위치한다면

java -jar /home/aaa/html/test.jar  

로 주시고 테스트 해보시고

그렇게 해서 동작하면

크론탭에 등록된것도 실행여부 확인해보시면 될듯 합니다.

만약 안된다면

crond 를 재시작 시키시면 될거 같습니다.

우왕 / 2017/07/13 13:01:29 / 추천 0

.jar로 실행하는건 꼭 해당 경로로 이동을 해야 하거든요ㅜㅜ

.sh는 크론탭에서 동작을 안하는데 별도로 실행하면 정상이고...흠

재시작도 해보았습니다 ㅋㅋ

변종원(웅파) / 2017/07/13 13:17:45 / 추천 0
sh파일 첫줄 명시하셨는지... 스크립트 파일 첫줄 확인해보세요.
우왕 / 2017/07/13 13:20:59 / 추천 0

아!! 쉘 스크립트에선 cd가 안 먹히나봐요!

제가 수정하고 답글 달겠습니다

유창화 / 2017/07/13 14:42:28 / 추천 0

cd 됩니다.

파일 젤 상단에

#!/bin/bash 

와 같이

어떤 스크립트를 쓸것인지 명시 했는지 그 부분을 말하는 것 같습니다.

#!/bin/bash

라는 뜻은 /bin/bash 를 통해 이 파일을 구동하겠다는 뜻입니다.

우왕 / 2017/07/13 15:54:44 / 추천 0

cd안먹는다던데요 ㅠㅜㅠ

쉘 스크립트는 서브 쉘에서 동작하는데

cd명령은 성공하지만 서브쉘에서 나가기때문에 현재 디렉토리로 복원된다더라구요

그리고 #!/bin/bash 적었습니다 ㅠㅠ흑

alias로 /etc/profile에 등록해서

쉘스크립트에서 cd이동되게끔 했는데 동작이 안해서 그 부분 다시 살피고있습니다!

변종원(웅파) / 2017/07/13 16:11:34 / 추천 0

cd 작동됩니다.

ci를 cli 모드로 작동시키기 위해서 디렉토리 이동하고 index.php 사용하여 호출합니다.

alias 등록한게 작동을 안할 수 있을 것 같네요.

유창화 / 2017/07/13 16:17:35 / 추천 0

이래저래 하셔도 안되시면

제가 위에서 언급한 crond 재시작 시켜보시는 것도 방법입니다.

아 서버 시간도 한번 확인 해보는것도 좋겟네요

디폴트 로케일 이 아시아/서울로 안잡혀 있는 경우도 있으니까요

sh 파일 퍼미션도 확인하시구요 755 정도

우왕 / 2017/07/13 16:57:06 / 추천 0

제가 작업한 내용

1. cron 재시작

2. 권한 체크(chmod, chown) 비교하여 제 개발에 맞게

지금은 bashrc에서 alias로 

alias testpath='cd /data/test/'

이렇게 절대경로 줬고요. 그리고 sh 쉘스크립트 따로 만들어서 위에 alias 만든 testpath echo 출력해봤는데요

에러나네요

크론에 sh쉘스크립트 등록할 때 로그파일 떨어지게 해놨었는데 그거 보니까

저 에러메세지 뜨더라구요

지금 상황은 이렇구요

구글링 열심히 하고있습니다 ㅜㅜ

유창화 / 2017/07/13 22:26:22 / 추천 0
Alias 빼보세요
제 경험이 미천해서 그런지 몰라도
저런식으로 알리아스 설정하고 해본적은 없습니다
Sh 파일 상단부에 선언을 제대로 하고
퍼미션 제대로 주고
./test.sh 실행해보시고
그때 에러가 나온다면 그메시지를 올려봐 주세요
변종원(웅파) / 2017/07/14 09:30:05 / 추천 0
그냥 cd 명령어 실행하면 되는데요.. ^^