2 파일에 관한 모든 것

이 장에서부터는 쉘 프로그래밍을 하기 위해 알아두어야 할 쉘에 대한 기본 지식과 쉘 명령어들에 대해 알아보도록 하겠다.

우리가 프로그래밍하는 대부분의 쉘 스크립트들은 기본적으로 쉘에서 제공하는 명령어들을 이용해서 파일과 디렉토리를 생성하거나 제거 혹는 특성을 바꾸는 작업을 한다. 이와 더불어 쉘에서 제공하는 조건문이나 반복문 등의 제어구문을 이용하여 복잡한 작업을 수행한다. 쉘 프로그래밍의 목적이 어디에 있건, 파일의 특성과 기본적인 쉘 명령어를 알아두는 것은 필수요건이라 하겠다. 그럼, 먼저 파일에 대한 특성과 접근에 대한 여러가지를 살펴보자.

유닉스가 데이타(data)나 시스템 장치(device)를 다루는 기본 단위는 파일(file)이다. 유닉스 시스템이 하드 디스크, 네트워크 등등에 접근하는 것은 모두 파일을 통해서이다. 예를들어, 첫번째 하드 디스크의 두 번째 파티션에 접근하기 위해서는 /dev/hda2라는 파일을 이용해야 한다. 또한, 파일들의 집합체인 디렉토리 역시 파일의 한 유형으로 관리한다. 따라서, 먼저 유닉스의 기본 단위인 파일을 정복함으로써 점차 더 깊은 쉘 프로그래밍의 세계로 나아가보자.

파일이 유닉스의 기본 단위로 사용되므로 파일에 대한 보안과 권한을 올바르게 설정하고 관리하는 것이 시스템 관리의 기본이라고 할 수 있겠다. 권한을 갖지 않은 사용자가 파일에 접근하는 것을 막기 위해 유닉스에서는 파일에 대한 접근 권한을 제어할 수 있는 방법을 제공하고 있다. 파일의 권한은 다음의 세가지 유형으로 구성되어 있다.

  1. 파일을 직접 생성한 소유자(owner)
  2. 소유자가 속한 그룹(group)
  3. 기타 다른 사용자(other)



Subsections
Dong-Hoon Yoo
2002-03-15