기본 UNIX 명령어 - SPARCS 10

Document Sample
기본 UNIX 명령어 - SPARCS 10 Powered By Docstoc
					기본 UNIX 명령어

   SPARCS 10
   이가영
일단 로그인!
•   Linux  login 시 계정을 입력하거나 root를 입력
•   Root -> #   일반 사용자 -> $


•   패스워드 : echo기능을 꺼서 볼 수 없다. 대소문자 구분
     • 패스워드 처음 설정 시 : ~$ passwd
     • 패스워드 변경 시 : ~$ passwd
         예전 패스워드 입력 후 새로운 패스워드를 입력한다.
셸(Shell) 사용
•   셸(Shell) : 사용자가 입력하는 명령어를 기계어로 변역하여 커널에 전
    달하는 역할을 하는 명령해석기


•   자신이 사용하고 있는 셸의 확인
       $echo $shell
•   로그인 셸을 바꿀 때 :
       $chsh 입력
       Enter password: (암호 입력)
       …
       Login Shell [현재 셸] : (바꿀 셸 입력)
UNIX 명령어의 기본적인 사용
•   $ls -l -a bobby
          쉘 구문의 일반적인 사용법은 명령어뒤에 공백을 두고 옵션들이
따         라온다.


•   $ls -la bobby
          옵션들은 다음과 같이 한꺼번에 쓸 수도 있다.


•   $ls -l bobby joe maria
          대상으로 하는 파일명이 하나이상 주어질 경우, 공백으로 구분을
해         주어 입력할 수도 있다.
엄청난 종류의 명령어들
•   외워두면 좋지만 이 많은 명령어를 기억하기에는 무리수


•   man과 help 라는 명령어가 있다.
       $man (명령어) 또는 $info (명령어) 
       $(명령어) –help




•   어떠한 주제에 관한 명령어를 찾고 싶을 때
       $apropos [주제어]
일일히 찾기 귀찮으므로 기본적인 것들은
        외워두자.
디렉토리 만들기, 삭제

•   디렉토리 만들기
      $mkdir [디렉토리 이름] : 현재 디렉토리에서
      $mkdir  위치/디렉토리이름


•   비어있는 디렉토리 삭제
      $rmdir [디렉토리 이름]
내 위치(디렉토리) 보기, 바꾸기

•   $  pwd  : 내 위치를 볼 수 있다.


•   $  cd [하부 디렉토리] : 하부 디렉토리로 이동
•   $  cd .. : 상위 디렉토리로 이동
•   $  cd : 홈 디렉토리로 이동
•   $  cd /[디렉토리] : 현재 위치한 디렉토리의 상위나 하위 디렉토리가 아닌
    별개의 디렉토리로 이동 –절대경로 지정
ls : 파일 목록을 보여주는 명령어
•   $ ls  [옵션]
•   [옵션] : -a 디렉토리 안에 있는 모든 파일과 디렉토리를 보여준다.
             -l 파일에 대한 자세한 정보를 보여준다.




•   첫번째 글자의 의미
         d : 디렉토리
         l : 링크
         그 외에 c(특성 장치, 파일), b(블럭 장치, 파일), p(파이프), f(스택)
•   파일의 소유주/ 그룹 / 나머지 그룹
 
•   각 그룹을 이루고 있는
•   첫번 째 문자 :
       - : 파일을 읽을 수 있는 권한이 없다.  만약 디렉토리라면 디렉토리에 들어있는 파일
의      목록을 볼 수 없다.
       r : 읽을 수 있는 권한이 있다.

•   두번째 문자:
       -: 파일에 덮어 쓰거나 정보를 추가할 수 없다. 만약 디렉토리라면 파일을 그 디렉토
리      에 새로 만들거나 지울 수 없다.
       w: 쓸 수 있는 권한을 가지고 있다.

•   세번째 문자:
       -: 파일을 실행할 권한이 없다. 만약 디렉토리라면 접근할 수 없다.
       x: 실행할 수 있는 권한을 가지고 있다.
       s: 이 속성은 실행할 수 있는 파일에만 있다.  사용자의 권한대신에 파일 소유자의 권
한      으로 파일을 실행할 수 있다.
chmod : 권한을 변경하는 명령어
•   ex) $ chmod ug+rw sample
•   레퍼런스
         u : 사용자
         g : 그 파일의 그룹 멤버
         o : 나머지 사람들
         a : 위의 셋 모두다
•   연산자
         + : 권한을 부여한다.
         - : 권한을 삭제한다.
         = : 정확한 모드 지정
사실 굳이 연산자를 쓸 필요가 없다.




 $ chmod 644  sample     -> rw_r_ _ r_ _

 $umask  숫자 : file은 666에서,  Directory는 777에서 빼준 값으로
 변경한다고 생각하면 된다.
  
•   setUID : 실행 시 파일 소유자의 권한을 임의로 가진다.
       $ chmod 4xxx    file/directory 


•   setGID : 실행시 해당 그룹에 포함된 계정은 사용자 권한을 임의로 가진다.
       $ chmod 2xxx    file/directory


•   Sticky bit : 이동, 삭제에 대한 권한은 root와 소유자만이 가진다. 그러나 수
    정은 가능하다.
       $ chmod 1xxx    file/directory
파일의 복사, 이동, 삭제
•   복사
    $ cp [파일명]  [목적지]
•   이동
    $ mv [파일명]  [목적지]
** 목적지가 없으면 단순히 파일명의 복사와 고치기로 인식
•   삭제
    $ rm [파일 이름]
    <옵션>
    -i : 지우기 전에 사용자에게 지울 파일인지를 확인을 받는다.
    -r : 디렉토리와 그 디렉토리가 가지고 있는 내용물들을 모두 지운다.
    -rf : 사용자에게 확인 받지 말고 디렉토리와 들어있는 파일들을 지운다.
ln : 다른 파일로의 연결 만들기


•   $ ln [원본 파일] [목적 파일] : 하드링크
        원본 파일을 삭제해도 하드링크는 원래의 내용을 가지고 있다.


•   $ ln –s [원본 파일] [목적 파일] : 심볼릭링크
        원본 파일을 삭제하면 심볼릭링크는 무용지물
cat과 more : 파일 내용 보기
•   $ cat [옵션] [파일명]
•   파일의 내용을 확인할 때 사용
•   옵션
         -b : 출력되는 각행에 행번호를 부여하여 출력. 공백행은 행번호를 부
여        하지 않음
         -v : 출력할 수 없는 문자들이 있으면 출력할 수 있는 문자로 바꿔서
출력       한다
         -n: 행마다 앞에 행번호를 붙인다.
•   $ more : 파일 내용이 길 때 사용. 
•   $ more [옵션] [파일명]
•   한 화면이 출력되고, 다음 화면을 출력하라는 키를 눌렀을 때, 다음 화면을 출력
    하는 방식
•   <키>
          스페이스바 : 한페이지 다음 내용을 출력
          b : 바로 앞 페이지의 내용을 본다.
          엔터 : 한줄 다음으로 이동한다.
          /[문장] : 파일에서 현재 위치 다음에 [문장]이 나타나는 곳으로 이동
          ?[문장] : [문장]들 중 파일의 제일 마지막에 위치한 곳으로 이동
          q : 끝마친다.
          v:  vi 편집기로 전환
          h : 도움말
와일드카드 문자
•    *  : 모든 문자열 의미
        $ rm     *         : 모든 파일을 지운다.
        $ rm    a*        : a로 시작하는 이름의 모든 파일을 지운다.
        $ rm   hi*bat : hi로 시작하고 bat으로 끝나는 모든 이름의 파일을 지운
다.


•    ? : 어떤 문자열 의미
        $ cat c?t         : c, 어떤 글자, t라는 이름을 가진 파일을 실행


•    [그룹] : 문자 집합
         $ mv   *[a-z]    hi  :  소문자로 끝나는 모든 파일을 hi 디렉토리로 옮긴
다.
         $ more [tp] ine    :  tine 과 pine 을 한 페이지씩 출력한다.
REDIRECTION
•   평상시 표준 출력과 표준 에러는 화면, 표준 입력을 자판으로 받는다.


•   명령 > outfile  : 출력을 outfile에 덮어쓴다.


•   명령 >> outfile : 덮어쓰지 않고 outfile의 내용에 연결하여 출력한다.


•   명령 < infile : 입력을 infile으로부터 받는다.
  평상시의 모습     출력이 지정되었을 때




입력이 지정되었을 때   입출력이 지정되었을 때
표준 에러도 REDIRECTION 가능
•   >&  :  표준 출력, 표준 에러 모두 리다이렉트
       $ gcc invinitjig.c >& error-msg


•   2>  :  표준 에러만 리다이렉트
       $ gcc invinitjig.c 2> error-msg


•   2>  :  표준출력은 버리고, 표준에러 리다이렉트 (화면에 출력이 안뜬다)
       $ gcc invinitjig.c 2>error-msg >/dev/null
PIPE(|) : 명령의 출력과 입력의 연결
•   한 프로세스의 출력을 다른 프로세스와 연결하려면, 명령을 수직 막대(|)로
    분리한다.


•   command1 | command2 | ... | commandN


         $ 명령1 > 중간파일
         $ 명령2< 중간파일
         이러한 두 개의 명령을 파이프를 이용해 하나로 쓸 수 있다.
         $ 명령1 | 명령2
foreground 와 background
•   화면에 보여주면서 명령을 수행하는 것이 foreground, 보여주지 않고
    뒤에서 작업하는 것이 background 프로그램이다. 


•   즉 background 상태는 입력이 불가능


•   background로 실행시키기 : 명령어 끝에 &를 붙인다.


•   정지된 작업을
       foreground로 보내기 :  $fg (%) 작업번호
       background로 보내기 :  $bg (%) 작업번호
•   $ jobs :    fore/background 작업 수 확인


•   $ kill [시그널]  작업번호 :  작업번호의 일에 시그널을 보낸다.


        시그널의 예
        HUP: 연결 끊기. 프로세스의 설정을 다시 읽을 때 사용
        TERM: 소프트웨어 종료 시그널
        CONT : 멈춤상태에서 다시 진행
        KILL : 강제종료
Daemon Programs
•   background에서 돌아가고 있는 서버 프로그램
•   단독으로 실행되는 데몬이 있고, 여러가지 서비스를 한꺼번에 관리하는 슈
    퍼데몬이 있다. (standalone, inetd)


•   단독 데몬의 실행 /중지/재시작:
       #service 데몬이름 start/stop/restart
•   부팅 시 자동실행되는 데몬의 관리
       # ntsysv : 현재 레벨의 데몬 관리 지정
       #ntsysv –level3 : 3번 레벨의 데몬 관리 지정
•   데몬의 예
        NetworkManager : 자동으로 최대 사용가능한 연결에 네트워크 연결을 스위칭한다.
        acpi : 커널로부터 ACPI 이벤트들을 받아서 처리한다.
        apmd : 베터리 상태를 모니터링하고 기록(syslog(8))한다. 고급 전원
        atd : 백그라운드 작업을 수행하거나 예약 명령을 처리한다.
        cups : 프린터 데몬
        daytime : 현재 시스템 시간을 가져와 프린트해주는 내부 xinetd 데몬 (tcp버전)



•   $ nohup (command) &   :  해당 명령을 데몬’처럼’ 백그라운드에서 지속적으
    로 동작하게 한다.  로그아웃 시에도 작업이 계속된다.
Process
•   실행 중인 프로그램.  순차적으로 실행한다.
•   Process의 상태는 생성, 준비, 실행, 대기, 종료 중 하나이다.
•   $  ps   [옵션] :  프로세서의 상태 점검
        옵션
        -l : 자세한 형태의 정보를 출력한다. 
        -u : 각 프로세서의 사용자 이름과 시작 시간을 보여준다. 
        -m : 메모리 정보를 출력한다. 
        -a : 다른 사용자들의 프로세서도 보여준다.
        -x : 로그인 상태에 있는 동안 아직 완료되지 않은 프로세서 보기 
•   $ kill (process-id)  :  실행 중인 프로세스를 중지한다.
•   출처 :  인터넷과 선배님의 세미나 자료




• 이상으로 세미나를 마치겠습니다 : )

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:3
posted:11/25/2013
language:Korean
pages:30