기본 커널 Shell 명령어 :

리눅스나 윈도우 서버 OS를 깔기 전 기본 상태에서의 설정 및 상태확인등을 위한

기본 Shell 명령어 모음

 

ls: 파일의 리스트를 보여준다. 사용법은 ls [-ailFRC] [파일 또는 디렉토리]

자주쓰이는 옵션 :

-l: 파일에 대한 긴 정보(파일 허용권,소유자,그룹,크기,날짜)를 보여준다.

-a: .으로 시작하는 파일은 도스의 숨겨진 파일과 같아서 이 옵션으로 봐야 볼 수 있다.

-i: l-node를 보여준다.

-t: 가장 최근에 변경된 파일을 최근의 것부터 보여준다.

-u: 변경되지 않았더라도 최근에 엑세스 했던 파일들을 보여준다.

-F: 파일의 특성을 보여준다. 이름 뒤에 디렉토리면 “/”, 실행파일이면 “*”, 링크된 파일이면 “@”을 붙여준다.

-R: 하위 디렉토리의 파일도 모두 보여준다.

: ls –al, ls –alF

cp(copy): 파일을 복사하는 명령어, cp file1 file2 또는 cp file(s) directory

[-r] option을 주면 directory copy가 가능하다.

mv(move): 파일이나 디렉토리의 위치를 바꾸거나 이름을 바꾼다.

사용법 : 1.mv [option] oldname newname

        2.mv [option] files(s) directory

1의 경우 파일의 oldname newname으로 바꾼다.

2의 경우 files(s)  directory로 옮긴다.

옵션은

–f : 옮겨질 디렉토리에 존재하는 파일이 있으면 덮어쓴다.

-i : 옮겨질 디렉토리에 존재하는 파일이 있으면 확인한다.

-v : 옮기기 전에 파일명을 출력한다.

rm (remove) : 파일을 제거한다. 만약 리눅스라면 한번 지운 파일은 다시 복구할 수 없다.

사용법은 rm [option] file(s) 사용할 수 있는 option

-f : 쓸 수 없는 파일이라도 물어보지 않고 강제로 지운다.

-i : 각 파일에 대하여 지울 것인지 물어 온다.

-r : 서브 디렉토리를 포함한 모든 내용을 재귀적으로 지운다.

-v : 지워지는 파일명을 출력한다.

cd(change directory) : 현재 작업 디렉토리를 변경한다.

사용법은 cd [directory name] , 디렉토리 이름이 생략되었을 경우에는 login한 홈 디렉토리($HOME,~로 표시한다.)로 변경된다. [.]은 현재 디렉토리, [..]은 상위 디렉토리, [/] root 디렉토리를 나타낸다.

mkdir (make directory) : 디렉토리를 만든다.  

사용법은 mkdir dir(s)

rmdir(remove directory) : 디렉토리를 지운다. 만약 디렉토리가 비어있지 않으면 지울 수 없다.

pwd(print working directory) : 현재 작업 디렉토리를 출력한다.

chmod(change mode) : 파일이나 디렉토리에 대한 접근 허용 범위를 변경한다.

리눅스는 사용자번호(UID)와 그룹번호(GID)를 가지고 있으며 이 명령으로 다른 사람들에게

자기 파일에 대한 접근 권한을 줄 수 있다.

사용법은 chmod [options] 8진수mode file(s) , chmod [options] symbolic-mode file(s)

우선 심볼모드를 먼저 설명 하자면

접근권한 : r(읽기 허용) , w(쓰기 허용), x(실행허용)으로 나뉘며 허용대상은 u(사용자/소유자), g(그룹), o(기타/ 사용자와 그룹을 제외한 사람), a(전체)로 나뉘며 u,g,o,a를 각각 r,w,x와 같이 +,-,=로 조합하여 사용한다.  예를 들어 보자면 chmod o-r,o-w filename 또는 chmod o-rw filename 인데

위의 예시는 파일을 기타 사용자가 읽지도 쓰지도 못하게 만드는 것이다.

또다른 예로는 chmod a+r*.c .c로 끝나는 모든 파일을 전체 사용자가 읽을 수 있게 만든다

chmod o=r run.cmd run.cmd라는 파일을 기타 사용자가 읽을 수만 있게 만든다. 이것은 o,

다른 모든 사람에게 주어진 권리를 모두 없애고 오직 r만을 할당한다. 8진수 mode를 사용한

경우는 3개의 숫자로 구성되며 각각 소유자,그룹,기타 사용자의 접근 권한을 나타낸다.

접근권한 : 4(읽기 허용), 2(쓰기 허용), 1(실행 허용)

허용대상 : 셋째자리(소유자), 둘째자리(그룹), 첫째자리(기타 사용자)로 나뉜다.

예를 들어 chmod 755 aa.run 라고 쓰면 aa.run이라는 파일에 대해 소유자는 읽기,쓰기,실행이 가능하고(7=4+2+1) 그룹과 기타 사용자는 읽기와 실행만 가능하게 설정된다.(5=4+1)

디렉토리에도 파일과 똑 같은 접근 권한이 있다. 디렉토리의 접근 권한은 좀 특이하게 해석된다.

디렉토리란 파일들의 목록이 기록된 또 하나의 파일이라고 볼 수 있다. 그러므로 디렉토리에

대한 읽기권한이란 디렉토리의 내용 즉, 파일 리스트를 볼 수 있는 권한을 말한다. 또 쓰기란

파일 리스트를 추가하거나 지우는 것이므로, 그 디렉토리에 대한 검색 역시 불가능하다. 그러므로 어떤 파일에 대해 쓰기 권한이 없다고 해도 그 파일이 디렉토리에 대한 쓰기 권한을 가지고

있다면 지울수가 있으니 유의해야 한다.

옵션 : -R : 서브 디렉토리의 파일까지 재귀적으로 실행된다.

      -f : 자기 소유가 아닌 파일에 까지 변경을 시도한다. 에러 메시지를 보여주진 않는다.

      -v : 변경되는 모드에 대해 보여준다.

chown(change owner) : 파일의 소유권자를 변경할 때 사용한다. Root는 어느 파일이든지 변경이

가능하지만, 그외의 사용자는 자신 소유의 파일에 대해서만 소유자를 변경할 수 있다.

사용법 : chown newowner 파일 또는 디렉토리

Newowner User Name 또는 User ID 모두 가능하다.

 

chgrp(change group) : 이것은 파일 소유권자의 그룹을 바꾸는 명려엉인데, chown의 기능과

유사하다.

 

file : 파일의 종류를 알아본다.

사용법 : file file(s) 파일의 종류를 분류한다.

find : 파일을 찾아서 특별한 기능을 실행한다.

사용법 : find path test action : path 아래의 모든 파일을 찾는다. test에는 다음의 탐색식을

줄 수 있다.

-name 파일이름 : 파일 이름과 일치하는 파일만 찾는다. 파일 이름에 메타문자를 쓰기 위해서는

파일 이름을 “”로 인용하거나 *을 스케이프시켜 써야한다.

-perm 파일모드 : 모드가 같은 파일만을 찾는다.

-type 파일종류 : 파일 종류가 같은 것만을 고른다. 파일 종류는 다음과 같이

b블럭(버퍼를 사용하는),c문자(버퍼를 사용하지 않는), d디렉토리,f일반 파일,I심볼릭 링크된 파일,

p파이프,s소켓

cmp(compare) : 두 파일이 어디가 다른지를 비교한다.  cmp file1 [file2]