>> Edit article
이름
제목
패스워드
이런...감격의 눈물이... 처음으로 제가 필요해서 만든 스크립트군요... 쉘스크립트에 대해서라고는 맨 처음에 #!/bin/sh 써줘야 된다는거만 알던 제가... 이걸 만들기 위해 이틀을 문서 뒤지고, 삽질하고, 맨페이지 뒤지고, 삽질하고, 밥먹고 와서, 삽질하고, 졸다가, 삽질하고.... 결국엔 성공했습니다....^^; 동아리 서버에 접속해서 그 서버에 물린 내부네트워크 안에 어떤 IP의 컴퓨터가 살아있는지 검사하기 위해서 만들었습니다...물론 ping으로요... 제가 막힌 부분은 exec였습니다...결국 맨페이지에서 말도 안되는 해석을 해서 나름대로 해결을 봤습니다...^^; 리다이렉션도 좀 말썽이었죠...무한 삽질을 통해서 원하는 출력이 나오도록 했습니다... 아...기뻐라...^^; 이거 보시고 혹 제가 잘못 알고 있는 것이 있으면 알려주세요... #!/bin/sh echo "Input limit (192.168.2.$limit) : 현재 디렉토리에 result.ping으로 저장될 >것입니다." #limit 변수값을 읽어들인다. read limit #cclass 변수값을 0으로 초기화한다. cclass=0 while((cclass<$limit)) do #cclass 변수에 1을 더한다. let cclass=cclass+1 #어느호스트에 ping을 하는지 표시한다. printf "192.168.2.$cclass : " >>./result.ping #ping을 때려서 반응이 오는 호스트는 time이 표시되므로 그들을 표시한다. ping -c 1 192.168.2.$cclass |grep time >>./result.ping #개행문자를 넣는다. printf "" >> ./result.ping done #while문의 결과값에서 반응이 없던 호스트들의 목록은 제외한다. cat ./result.ping |grep ms >./result.ping #...exec is replaced shell...--;;; #exec를 사용하면 exec 이후의 문장을 실행하고 종료시켜버린다... #아마도 자신이 실행되던 쉘을 대체하여 실행하고 나서 자신은 종료되지만 #대체된 쉘을 복구시키지 않기 때문에 다음 스크립트로 넘어가지 않는듯 하다.--Make better life
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved