<챕터 1 : 쉘이란 무엇인가?>
쉘이란, 키보드로 입력한 명령어를 운영체제가 전달하여 이 명령어를 실행하게 하는 프로그램이다.
GUI 환경에서는 쉘과 직접 작업할 수 있도록 도와주는 터미널 에뮬레이터라는 프로그램이 필요하다. 리눅스에는 다양한 터미널 에뮬레이터가 있지만 모두 쉘에 접근할 수 있게 해준다는 기능을 수행한다.
-쉘 프롬프트
쉘이 입력 가능한 상태일 때에만 나타난다. 만약 프롬프트의 마지막 글자가 달러표시($)가 아니라 해쉬 표시(#)라면, 현재 터미널 세션이 슈퍼 유저 권한을 가졌다는 뜻이다.
-명령어 히스토리
방금 입력한 명령어를 다시 보려면 위쪽 방향키를 사용해보자. 이러한 기능을 명령어 히스토리라고 한다.
-커서 이동
위쪽 방향키로 이전 명령어를 불러온 후, 왼쪽/오른쪽 방향키를 사용하면 커서를 명령어 어느 부분에라도 이동할 수 있어서 명령어를 쉽게 편집할 수 있다.
-간단한 명령어 실행하기
1. date
현재 시간과 날짜를 표시한다.
2. cal
현재 날짜의 달력을 표시한다.
3. df
현재 사용중인 디스크 정보와 사용 가능한 디스크의 용량을 표시한다.
4. free
메모리 사용 현황 정보를 표시한다.
-터미널 세션 종료
터미널 세션을 종료하는 방법은 두 가지다. 직접 터미널 에뮬레이터 창을 닫거나, 쉘 프롬프트에 exit 명령어를 입력하면 터미널 세션이 종료된다.
<챕터 2 : 파일 시스템 탐색>
리눅스와 같이 유닉스형 운영체제에서는 윈도우즈와 마찬가지로 계층적인 디렉토리 구조로 파일을 구성한다. 즉 트리 형식으로 디렉토리를 구성하고. 각 디렉토리에는 파일이나 다른 디렉토리가 포함될 수 있다.
파일 시스템의 최상위 디렉토리를 루트(root)디렉토리 라고 한다.
-윈도우즈와 유닉스형 시스템의 차이점
윈도우즈는 저장장치마다 개별 파일시스템으로 관리하는 반면 유닉스형 시스템에서는 아무리 많은 저장장치가 설치되었다 해도 단일 파일 시스템으로 관리한다는 점이다.
-현재 작업 디렉토리
현재 우리가 위치해있는 지점을 현재 작업 디렉토리라고 한다. 현재 작업 디렉토리를 표시하려면 pwd(print working directory : 작업 디렉토리를 출력하라는 뜻)라는 명령어를 사용한다.
시스템에 처음 로그인하면, 홈 디렉토리가 현재 작업 디렉토리가 된다.
-디렉토리 목록 표시
현재 작업 디렉토리에 있는 파일과 하위 디렉토리를 표시할 때는 ls 명령어를 사용한다.
-현재 작업 디렉토리 변경
cd라는 명령어로 현재 작업중인 디렉토리를 변경할 수 있다. cd 다음에 변경하고자 하는 디렉토리 경로명을 입력하면 된다. 경로명이란 우리가 원하는 디렉토리까지 파일시스템 트리상의 이동 경로를 나타낸 것이다. 경로명을 표시하는 방법은 절대 경로명과 상대 경로명 두 가지가 있다.
-절대 경로명
절대 경로명은 루트 디렉토리에서 원하는 디렉토리 또는 파일까지의 경로에 대하여 각 디렉토리 위치들 하나하나를 명시해준 것이다. ex) /usr/bin
즉, 루트 디렉토리(경로명의 맨 처음에 슬래시(/)는 루트 디렉토리를 표시한다) 다음에 usr이란 디렉토리가 있고 usr 디렉토리 안에는 bin 디렉토리가 있다는 것이다.
-상대 경로명
상대 경로명은 현재 작업 디렉토리가 시작점이 도니다. 상대 경로명을 표현하기 위해선 파일 시스템 트리상의 상대적인 위치를 대신 표현해주는 특수 기호를 사용해야 하는데, 바로 .(점)과 ..(점점)이다.
. 기호는 현재 작업 디렉토리를 나타내고 .. 기호는 작업 디렉토리의 상위 디렉토리를 의미한다.
현재 디렉토리가 /usr/bin이라 했을 때, 작업 디렉토리를 부모 디렉토리인 /usr로 변경하는 것에 대해 우리는 두 가지 방법을 사용할 수 있다.
절대 경로명 : cd /usr
상대 경로명 : cd ..
동일하게 /usr에서 /usr/bin 디렉토리로 이동할 때도 절대 경로명과 상대 경로명 둘 다 사용할 수 있다.
절대 경로명 : cd /usr/bin
상대 경로명 : cd ./bin
여기서 중요한 점은, 거의 모든 경우의 상대 경로명에서 ./ 기호를 생략할 수 있다는 것이다.
./bin 대신 bin으로 입력하면 된다.
-유용한 단축 표현들
cd : 작업 디렉토리를 홈 디렉토리로 변경
cd ~ : 작업 디렉토리를 이전 작업 디렉토리로 변경
cd ~username : username의 홈 디렉토리로 작업 디렉토리를 변경
+파일명에 관한 중요한 몇 가지 사실
- .(마침표)로 시작하는 파일명을 가진 파일들은 보이지 않는다. (숨겨진 파일)
ls -a 를 사용해야 비로소 확인이 가능하다.
- 리눅스에서 파일명과 명령어는 대소문자를 구분한다.
- 리눅스에는 "파일 확장자"라는 개념이 없기 때문에 원하는 대로 파일명을 만들 수 있고, 파일의 내용과 파일 종류는 다른 방법으로 결정된다.
-파일명에 공백(스페이스)를 포함하지 말아야 한다.